前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >matlab画图操作(修改坐标轴及字体,加粗,颜色修改,适合论文画图)「建议收藏」

matlab画图操作(修改坐标轴及字体,加粗,颜色修改,适合论文画图)「建议收藏」

作者头像
全栈程序员站长
发布2022-11-08 10:01:51
12.7K0
发布2022-11-08 10:01:51
举报
文章被收录于专栏:全栈程序员必看

大家好,又见面了,我是你们的朋友全栈君。

matlab常用画图操作

1.设置坐标轴

代码语言:javascript
复制
%设置坐标轴格式
title('Title','fontsize',12,'fontname','Times');	%设置标题字体
xlabel('Times(s)','fontsize',12,'fontname','Times','FontWeight','bold')	%设置x轴字体
ylabel('Value','fontsize',12,'fontname','Times')	%设置y轴字体
set(gca,'FontName','Times New Roman','FontSize',11,'FontWeight','bold');	%设置坐标刻度字体
axis off;        % 去掉坐标轴
set(gca,'looseInset',[0 0 0 0])	%去掉白色边框

2.设置figure大小

代码语言:javascript
复制
figure(1)
set(gcf,'position',[180,60,960,480]);%设置画图的大小
四个数分别代表距y轴的距离、距x轴的距离、图宽、图长

3.matlab线条设置

代码语言:javascript
复制
%绘制一条横线
plot(xlim,[0.32,0.32],'k-','LineWidth',1)

4.子图设置

在这里插入图片描述
在这里插入图片描述
代码语言:javascript
复制
%子图代码
subplot(2,2,[1 2])
plot(x)
subplot(2,2,3)
plot(y)
subplot(2,2,4)
plot(z)

5.颜色查询

在这里插入图片描述
在这里插入图片描述

如果想要查看清晰版的可以去这个网页去查:matlab颜色对照图

代码语言:javascript
复制
%设置灰度图,查上方的表格
% c=plot(x1,'LineWidth',0.2);
% set(c,'color',[0.41, 0.41, 0.41]);

6.colorbar设置

代码语言:javascript
复制
%不显示colorbar
colorbar off;
colorbar ('off')
colorbar (' hide')
colorbar ('delete')

%设置colorbar标题及色阶范围
caxis([-150,-40])%设置colorbar色阶范围
h=colorbar('fontname','Times')
set(get(h,'title'),'string','dB');

以下是设置色阶范围和设置标题的示例截图:

在这里插入图片描述
在这里插入图片描述

7.线条透明度设置

代码语言:javascript
复制
%设置线条透明度
c=plot(x1,'k','LineWidth',0.3);
c.Color(4) = 0.5; 

样例:

在这里插入图片描述
在这里插入图片描述

8.设置坐标轴刻度形式(对数刻度)

代码语言:javascript
复制
%设置坐标轴刻度
set(gca,'Yscale','log')
yticks([0 0.064 0.128 0.256 0.512 1.024 2.048 4.096 8.192])		%具体的y轴刻度
yticklabels({'0','64','128','256','512','1024','2048','4096','8192'})	%这是上一行的标签

样例展示:

在这里插入图片描述
在这里插入图片描述

9.图例设置

代码语言:javascript
复制
%设置图例位置
legend('\alpha_1','\alpha_1','\alpha_1',1)

	0——图例尽量不与数据冲突,自动放置在最佳位置
	1——放置在放置在图形的右上角 top right
	2——放置在图形的左上角 top left
	3——放置在图形的左下角 bottom left
	4——放置在图形的右下角 bottom right
	-1——放置在图形视窗的外右边

%设置图例字体及大小
h=legend('Before DRC','After DRC');
set(h,'FontName','Times New Roman','FontSize',11,'FontWeight','normal')


%也或者这样设置图例的位置
h=legend('Before DRC','After DRC');
set(h,'FontName','Times New Roman','FontSize',11,'FontWeight','normal','Location','northeast')

%其中location的选项有:
'north' | 'south' | 'east' | 'west' | 'northeast' | 'northwest' | 'southeast' | 'southwest' | 'northoutside' | 'southoutside' | 'eastoutside' | 'westoutside' | 'northeastoutside' | 'northwestoutside' | 'southeastoutside' | 'southwestoutside' | 'best' | 'bestoutside' | 'none'

10 文件保存

代码语言:javascript
复制
fig = figure; % 新建一个figure,并将图像句柄保存到fig
plot(x,y) % 使用plot绘制图片,当然也可以
frame = getframe(fig); % 获取frame
img = frame2im(frame); % 将frame变换成imwrite函数可以识别的格式
imwrite(img,'a.png'); % 保存到工作目录下,名字为"a.png"

11 消除白色边框

代码语言:javascript
复制
    %消除白色边框
    
    ax = gca;
    outerpos = ax.OuterPosition; % [0, 0, 1, 1]

    ti = ax.TightInset; 
    left = outerpos(1) + ti(1);
    bottom = outerpos(2) + ti(2);
    ax_width = outerpos(3) - ti(1) - ti(3);
    ax_height = outerpos(4) - ti(2) - ti(4);
    ax.Position = [left bottom ax_width*0.99 ax_height];

未去除边框

去除白色边框

12 添加子标题

代码语言:javascript
复制
clc;
clear all;
filename='./babble/clean/english.1snoke-20120412-hge-a0413.wav';
[x,fs]=audioread(filename);%读取wav文件
%     x=x(1:33000);
times=0:length(x)-1;
times=(times/fs)';

set(gcf,'position',[180,60,800,300]);%设置画图的大小

%不添加子标题
subplot(1,2,1)
spectrogram(x,512,256,512,16000,'yaxis');
xlabel('t/s')
ylabel('Frequency/Hz')
colorbar('off')%取消colorbar

%添加子标题
subplot(1,2,2)
spectrogram(x,512,256,512,16000,'yaxis');
xlabel({'t/s',['(a) clean'],'(a) 纯净语音'})
ylabel('Frequency/Hz')
colorbar('off')%取消colorbar
在这里插入图片描述
在这里插入图片描述

13 调换y轴递增顺序

在我们使用imagesc()函数对矩阵进行绘制图像的时候,经常会出现y轴刻度并不是我们所需要的顺序,例如我们需要从下向上依次递增,而我们绘制的图片却是从上 向下递增,不符合我们需求,于是有如下解决方案。

代码语言:javascript
复制
axis xy  %改变y轴顺序

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/191350.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022年9月20日 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • matlab常用画图操作
  • 1.设置坐标轴
  • 2.设置figure大小
  • 3.matlab线条设置
  • 4.子图设置
  • 5.颜色查询
  • 6.colorbar设置
  • 7.线条透明度设置
  • 8.设置坐标轴刻度形式(对数刻度)
  • 9.图例设置
  • 10 文件保存
  • 11 消除白色边框
  • 12 添加子标题
  • 13 调换y轴递增顺序
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档