您的位置 首页 > 数码极客

如何用matlab画数据图像——matlab读取图像数据!

不管是写论文,还是做方案,总需要数据图形作为支撑。今天,简单分享几个Matlab二维画图常用的命令,让你也可以画出漂亮的图形。


单坐标轴曲线绘制

绘图一般分为三步:数据准备、画图命令、增加修饰。


1.数据准备


一般可以直接在Matlab工作空间建立数据,或者通过命令导入数据,如用xlsread()可导入excel文件中的数据。


我们直接在Matlab定义向量X1,Y1,Y2:;

X1=[0:0.01:10]; Y1=sin(X1); Y2=0.1.*X1;


2、命令画图


用plot(x,y)可绘制以x为横坐标,y为纵坐标的数据。


利用以上数据,执行以下命令:

plot(X1,Y1,'r','Linewidth',2); hold; plot(X1,Y2,'k','Linewidth',2);


可画出初步的数据图形,如下图。


3、增加坐标轴、标题、说明等修饰。


通过各种修饰命令让图形更加清晰,一目了然。


继续执行以下命令:

grid ;%%显示网格 AXis([0 10 -1.5 1.5]); %%设置坐标轴范围 set(gca, 'LineWidth',2); %%设置坐标轴线宽 xlabel('时间/s'); %%设置横坐标 ylabel('幅值/m'); %%设置纵坐标 legend('曲线1', '曲线2'); %%设置线条说明 title('XX标题'); %%设置标题


得到如下图形,看起来还可以。

以上3个步骤之后,基本可以得到满意的图形了。


当同一个图中曲线较多时,可以通过颜色、线性、标记等做区分,常用的曲线设置如下图。


常用的图形标注命令如下图。


双坐标轴曲线绘制

当两个曲线范围相差较大时,如果用单坐标轴显示效果会很差,这个时候可以考虑使用双坐标轴显示。


主要命令是[AX,H1,H2]=plotyy(X1,Y1,X2,Y2),返回AX、H1、H2。AX是两个坐标轴的句柄,AX(1)代表左侧轴, AX(2)代表右侧轴;H1和H2中两条曲线的句柄。

句柄可理解为一个对象的ID,通过对某个ID的施加命令,以达到操作某个对象的目的,Matlab很多函数需要借助句柄进行操作。


执行以下命令:

X1=[0:0.01:10]; %%数据准备 Y1=sin(X1); Y2=X1; [AX,H1,H2]=plotyy(X1,Y1,X1,Y2); %%绘图 grid; %%显示网格 set(AX(1),'ylim',[-1.5,1.5]); %%设置左侧纵坐标范围 set(AX(2),'ylim',[-5,15]); %%设置右侧纵坐标范围 xlabel('X Axis'); %%设置横坐标 ylabel(AX(1),'Y1 Axis'); %%设置左侧纵坐标 ylabel(AX(2),'Y2 Axis'); %%设置右侧纵坐标 set(H1,'color','b'); %%设置曲线1的颜色 set(H2,'color','r'); %%设置曲线2的颜色 set(H1,'linewidth',2); %%设置曲线1的线宽 set(H2,'linewidth',2); %%设置曲线2的线宽 set(gca, 'LineWidth',2) %%设置坐标轴线宽 legend('Y1','Y2'); %%设置线条说明 title('Y1&Y2'); %%设置标题


可得到双坐标曲线如下图。

当曲线数量大于2条时,一般采用数据缩放的形式显示,也可以采用下面将介绍的子图方式显示。


子图绘制

当图形数量较多时,为了对比更加直观,同时节省绘图空间,可以在同一个绘图窗口下绘制多幅子图,这时可以使用subplot函数。


subplot函数的一般语法形式为:

h = subplot(m, n, p)

即可在当前绘图区中创建m×n个绘图子区,并将第p个绘图子区选定为当前绘图区。

subplot仅创建子图坐标平面,在该坐标平面内绘制子图,仍然需要使用plot 函数或其他绘图函数。


运行以下命令:

X1=[0:0.01:10]; %%数据定义 Y1=sin(X1); Y2=0.1.*X1; Y3=cos(X1); Y4=X1.^2; subplot(2,2,1); plot(X1,Y1,'r','Linewidth',2); grid; xlabel('时间/s'); ylabel('幅值/m'); title('标题1'); subplot(2,2,2); %%子图2绘制 plot(X1,Y2,'k','Linewidth',2); grid; xlabel('时间/s'); ylabel('幅值/m'); title('标题2'); subplot(2,2,3); %%子图3绘制 plot(X1,Y3,'m','Linewidth',2); grid; xlabel('时间/s'); ylabel('幅值/m'); title('标题3'); subplot(2,2,4); %%子图4绘制 plot(X1,Y4,'g','Linewidth',2); grid; xlabel('时间/s'); ylabel('幅值/m'); title('标题4');

可得到结果如下图:

手动调整

对于一些不常用的设置类型或者不习惯用代码画图,可以自行在Figure界面中的Insert、Tools菜单栏中进行相应的操作来修改图形属性或注释等等。


Insert下拉菜单栏如下图,包含了上面提到的坐标轴、标题等设置。


Tool下拉菜单栏如下图,包含了缩放、视角等操作。


在File菜单下点击Export Setup,会弹出输出设置界面,在里面可以设置图形大小、颜色、分辨率等等,最后可以选择Export输出Png、Tiff等图片类型。当然可以保存常用的图片输出类型设置,下次使用时点击Load和Apply toFigure即可快速设置已保存的输出类型。


以上,简要介绍了Matlab中二维画图的基本操作,更多内容可查阅Matlab官方帮助文档了解。

责任编辑: 鲁达

1.内容基于多重复合算法人工智能语言模型创作,旨在以深度学习研究为目的传播信息知识,内容观点与本网站无关,反馈举报请
2.仅供读者参考,本网站未对该内容进行证实,对其原创性、真实性、完整性、及时性不作任何保证;
3.本站属于非营利性站点无毒无广告,请读者放心使用!

“如何用matlab画数据图像,matlab读取图像数据,如何用matlab把图像导出数据,matlab根据数据画图像,matlab给定数据画图像,如何把matl”边界阅读