Matlab绘制双y轴曲线
来源:网络收集 点击: 时间:2024-05-17首先来一列数据,如果是单独写在两个图形上,可以这样:
x = 0:0.01:20;y1 = 200*exp(-0.05*x).*sin(x);y2 = 0.8*exp(-0.5*x).*sin(10*x);
subplot(1,2,1);
plot(x,y1);
subplot(1,2,2);
plot(x,y2);

如果要写在一个图形上,使用双坐标:
x = 0:0.01:20;y1 = 200*exp(-0.05*x).*sin(x);y2 = 0.8*exp(-0.5*x).*sin(10*x);figure;plotyy(x,y1,x,y2);
这比画在一个图形上要方便多了。

可以通过如下方式对不同的曲线进行赋值:
figure;
= plotyy(x,y1,x,y2);
title(Multiple Decay Rates);
xlabel(Time (\musec));
ylabel(hAx(1),Slow Decay) ;
ylabel(hAx(2),Fast Decay);
hAx(1)和hAx(2)分别代表了第一个图形和第二个图形。

还可以使用不同的线型画不同的线:
= plotyy(x,y1,x,y2);
hLine1.LineStyle = --;
hLine2.LineStyle = :;
可以看看第一条线和第二条线的区别。

当然两条线也可以用不同的方式进行绘制:
x = 0:0.1:10;
y1 = 200*exp(-0.05*x).*sin(x);
y2 = 0.8*exp(-0.5*x).*sin(10*x);
figure;
plotyy(x,y1,x,y2,plot,stem)
第一条线是最普通的plot,第二条线是棒状图stem。

当然,目前的matlab还支持使用yyaxis命令:
x = linspace(15,30);
y = sin(3*x);
yyaxis left;
plot(x,y);
z = sin(3*x).*exp(0.5*x);
yyaxis right;
plot(x,z);
ylim();
使用该命令也可以达到plotyy的效果。最近的matlab有使用yyaxis取代plotyy的趋势。

版权声明:
1、本文系转载,版权归原作者所有,旨在传递信息,不代表看本站的观点和立场。
2、本站仅提供信息发布平台,不承担相关法律责任。
3、若侵犯您的版权或隐私,请联系本站管理员删除。
4、文章链接:http://www.1haoku.cn/art_779813.html