如何使用MATLAB在一个图中绘制一条x轴和两条y轴的四条曲线

时间:2014-05-01 01:50:55

标签: matlab plot

我有四组数据:(x1,y1),(x1,y2),(x2,y3),(x2,y4)。 y1和y3以及y2和y4是两对数值结果和分析结果。所以我想在同一个数字中比较它们。然而,y1和y3的幅度远大于y2和y4,所以我需要两个y轴来清楚地显示曲线。 x1和x2是采样时间实例,但长度不同。例如,x1 = 0:dt1:T,x2 = 0:dt2:T,其中dt1和dt2是两个不同的时间步长,T是总时间。我尝试过plotyy但我只能在一个图中而不是四个中绘制两条曲线。有没有人有想法?非常感谢!

1 个答案:

答案 0 :(得分:1)

此示例与plotyy的文档中给出的示例几乎相同,应该会有所帮助。您只需要根据数据的存储方式适当地连接数据。

x = linspace(0,10);
y1 = 200*exp(-0.05*x).*sin(x);
y2 = 0.8*exp(-0.5*x).*sin(10*x);
y3 = 150*exp(-0.05*x).*sin(x);
y4 = 0.2*exp(-0.5*x).*sin(10*x);

figure
[hAx,hLine1,hLine2] = plotyy([x',x'],[y1',y3'],[x',x'],[y2',y4']);

编辑:此question也可能有用。