MATLAB绘图技巧:子图与双坐标轴应用实例

渐开线是在一个基圆上取出一条直线段,一端点扫过的路径。就像车轮在路面上碾过,以车轮为固定坐标系,看路面某点的轨迹一样。如下图所示

渐开线

编写渐开线函数代码:

渐开线函数

a=0:0.1/180*pi:70/180*pi;%压力角 b=0:0.1/180*pi:2*pi;%基圆角度 rb=10;%基圆半径 theta=tan(a)-a;%展角 x_theta=theta/pi*180;%展角压力角(角度形式) y_a=a/pi*180;%压力角(角度形式) rk=rb./cos(a);%渐开线极坐标的矢径 x=rk.*cos(theta); y=rk.*sin(theta);%渐开线直角坐标 xb=rb*cos(b); yb=rb*sin(b);%基圆直角坐标 create_line=rb.*tan(a);%发生线

我们在绘制多个函数图时,由于它们之间相互关联,往往希望能将多张图像放在同一页面。这时,就需要利用子图的绘制方式。

利用subplot绘制子图

subplot(2,1,1)%表示以2行1列绘制第一副子图 plot(x,y,'b-','LineWidth',1.5); hold on; plot(xb,yb,'b:','LineWidth',1.5); axis equal;%为方便观察,坐标轴比例一致 grid on; title('渐开线','FontSize',12,...%由于代码过长,利用“...”下一行续写     'FontName','楷体');

在绘制函数曲线时,常常需要在一张图上绘制多条函数曲线。这种同一个自变量的多条函数曲线的函数值范围往往难以统一,用同一纵坐标并不合适。这时,就需要采用双纵坐标的方式绘图。

双纵坐标绘图

subplot(2,1,2)%表示以2行1列形式排列,绘制第二副子图 yyaxis left%表示接下来以左边坐标轴绘制 plot(x_theta,y_a,'-','LineWidth',1); xlabel('展角(°)','FontSize',12,...     'FontName','楷体'); ylabel('压力角(°)','FontSize',12,...     'FontName','楷体'); yyaxis right%表示接下来以右边坐标轴绘制 plot(x_theta,create_line,'--',...     'LineWidth',1.5); ylabel('发生线长度','FontSize',12,...     'FontName','楷体'); legend({'压力角','发生线长度'},...     'FontSize',12,'FontName','楷体');%给绘制的多条曲线标注

绘制结果

渐开线函数曲线

总结:

利用subplot(row,colum,NO)来绘制子图,row行数,colum列数,NO第几幅图

利用yyaxis left和yyaxis right来绘制左右双纵坐标函数图像

QR Code
微信扫一扫,欢迎咨询~

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

* 公司名称:

姓名不为空

手机不正确

公司不为空