许可优化
许可优化
产品
产品
解决方案
解决方案
服务支持
服务支持
关于
关于
软件库
当前位置:服务支持 >  软件文章 >  Matlab画图,几步轻松搞定

Matlab画图,几步轻松搞定

阅读数 47
点赞 0
article_banner

不管是写论文,还是做方案,总需要数据图形作为支撑。今天,简单分享几个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官方帮助文档了解。


免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删

武汉格发信息技术有限公司,格发许可优化管理系统可以帮你评估贵公司软件许可的真实需求,再低成本合规性管理软件许可,帮助贵司提高软件投资回报率,为软件采购、使用提供科学决策依据。支持的软件有: CAD,CAE,PDM,PLM,Catia,Ugnx, AutoCAD, Pro/E, Solidworks ,Hyperworks, Protel,CAXA,OpenWorks LandMark,MATLAB,Enovia,Winchill,TeamCenter,MathCAD,Ansys, Abaqus,ls-dyna, Fluent, MSC,Bentley,License,UG,ug,catia,Dassault Systèmes,AutoDesk,Altair,autocad,PTC,SolidWorks,Ansys,Siemens PLM Software,Paradigm,Mathworks,Borland,AVEVA,ESRI,hP,Solibri,Progman,Leica,Cadence,IBM,SIMULIA,Citrix,Sybase,Schlumberger,MSC Products...

相关文章
QR Code
微信扫一扫,欢迎咨询~
customer

online

联系我们
武汉格发信息技术有限公司
湖北省武汉市经开区科技园西路6号103孵化器
电话:155-2731-8020 座机:027-59821821
邮件:tanzw@gofarlic.com
Copyright © 2023 Gofarsoft Co.,Ltd. 保留所有权利
遇到许可问题?该如何解决!?
评估许可证实际采购量? 
不清楚软件许可证使用数据? 
收到软件厂商律师函!?  
想要少购买点许可证,节省费用? 
收到软件厂商侵权通告!?  
有正版license,但许可证不够用,需要新购? 
联系方式 board-phone 155-2731-8020
close1
预留信息,一起解决您的问题
* 姓名:
* 手机:

* 公司名称:

姓名不为空

姓名不为空

姓名不为空
手机不正确

手机不正确

手机不正确
公司不为空

公司不为空

公司不为空