在Matlab中用plot函数画出了多条曲线,用Lagend给出图例的时候,怎么调换各条曲线给出图例的顺序??

在Matlab中用plot函数画出了多条曲线,用Lagend给出图例的时候,怎么调换各条曲线给出图例的顺序?? 例如:
实线——a=0.1;
虚线----a=0.2;
我想让它调换秩序,显示为
虚线----a=0.2;
实线——a=0.1;
应该怎么办?请高手指点,谢谢。

希望下面的小例子能对你有所帮助

clear;clc;close all

a=1:10;

b=rand(10,4);

h(4,1)=0;

hold on

for i=1:4

    h(i)=plot(a,b(:,i),'color',rand(1,3));

end

legend([h(1),h(3),h(2)],strcat({'a='},num2str([1,3,2]','%d')));

温馨提示:内容为网友见解,仅供参考
第1个回答  2010-12-09
legend函数 对图中的各个曲线进行图例标注的时候,是按 绘制 先后顺序 依次进行标注
如果你要改变图例的顺序的目的,只需要 调换 两条曲线的 绘制顺序 即可。
第2个回答  2010-12-03
a1=ones(1,10);
a2=a1+1;

figure (1);
plot(a1,'r')
hold on
plot(a2,'--')
hold on
axis([1 10 0 3])
legend('a1 红色实线','a2 蓝色虚线')

figure (2);
plot(a2,'--')
hold on
plot(a1,'r')
hold off
axis([1 10 0 3])
legend('a2 蓝色虚线','a1 红色实线')
--------------------------------------------------

你看看是不是这个意思 不是的话再联系我
其实很简单 就是画2条线的顺序改下 之后再按顺序改 legend里的参数就好了本回答被提问者采纳

在Matlab中用plot函数画出了多条曲线,用Lagend给出图例的时候,怎么调 ...
clear;clc;close all a=1:10;b=rand(10,4);h(4,1)=0;hold on for i=1:4 h(i)=plot(a,b(:,i),'color',rand(1,3));end legend([h(1),h(3),h(2)],strcat({'a='},num2str([1,3,2]','%d')));

相似回答