Matlab的图例功能的不稳定行为

时间:2015-02-15 01:58:54

标签: matlab legend

我正在研究MATLAB项目,发现了legend函数的一些奇怪行为。以下是重现该问题的代码:

X=rand(3,100);
a=rand(3,100);
b=rand(3,100);
figure(1); hold on;
plot(0.17663,'m');
plot(1.223,'y');
plot(X,a,'r');
plot(X,b,'g');
legend({'s1','s2','a','b'});

我的问题是:图中的图例显示了图3和图4的相同颜色。相反,它应分别显示红色和绿色。 legend是否有问题?

http://i.stack.imgur.com/j6JbH.png

1 个答案:

答案 0 :(得分:1)

命令plot(X,a,'r')plot(X,b,'g')不是您所期望的。由于X3-by-100数组,因此它们将绘制100行,每行包含3个点,即开始,中间,结束。图例条目将对应于每一行,因此您应该期望100个红色图例条目。如果传递转置数组,您将看到不同的行为:plot(X.',a.','r')。这将绘制3条线,每条线由100个点组成。