我怎么能在Matlab的一个图中多次绘图?

时间:2015-03-05 14:50:35

标签: matlab matlab-figure

您好我正在尝试实现以下代码。

plot(bins,r);
plot(bins,g);
plot(bins,b);

但我想用一个数字绘图。 有什么办法吗?

3 个答案:

答案 0 :(得分:2)

是的,您可以一次性绘制所有内容:

plot(bins,r,bins,g,bins,b)

或在第一次调用情节后使用hold on

答案 1 :(得分:2)

您需要使用hold on

  

保持当前轴上的保留图,以便添加新图   轴不会删除现有图。新图使用下一种颜色   和基于ColorOrder和LineStyleOrder属性的线条样式   的轴。 MATLAB®调整轴限制,刻度线和刻度标签   显示全部数据。

hold on
plot(bins,r)
plot(bins,g)
plot(bins,b)

答案 2 :(得分:2)

对于同一图中的多个图而不是相同的轴。你必须使用subplot(x,y,z)。第一个参数'x'是你想要产生的图的数量,在你的情况下3.第二个'y'只是调整图的大小,你可以使用1.第三个'z'是图的位置,某个情节是第一,第二还是第三。

subplot(3,1,1)
plot(bins,r);
subplot(3,1,2)
plot(bins,g);
subplot(3,1,3)
plot(bins,g);

要区分所有三个图,您可以向plot()添加另一个参数,以便您可以更改颜色。例如:

plot(bins,r,'r')

'r'将使图表的颜色变为红色,'b'使其变为蓝色,'k'使其变为黑色......等等。