t=0:0.1:10;
y=sin(t);
x=cos(t);
l=plot(t,y,'r-');
hold on
p=plot(t,x,'g-');
[legh,objh,outh,outm]=legend(l,'y',1);
legh2=copyobj(legh,gcf);
[legh2,objh2]=legend(p,'x',2);
用的时候,可以参考上面程序改(来自:http://www.ilovematlab.cn/forum.php?mod=viewthread&tid=21978)
a=linspace(0,2*pi,100);
y1=100*sin(a);
y2=50*cos(a);
y3=tan(a);
y4=log(a);
y=[y1;y2;y3;y4];
figure
p=plot(a,y)
legend(p(1:2),'sin','cos');
ah=axes('position',get(gca,'position'),...
'visible','off');
legend(ah,p(3:4),'tan','log','location','west');
上面这个也可以参考(来自:http://www.ilovematlab.cn/forum.php?mod=viewthread&tid=100051)
以下是自己的程序,可以学习plotyy表中和一幅图中画两个legend
clear,clc;,clf;
x=[1 2 3 4];
y1=[1.5 2.5 3.5 4.5];
y2=[0.1 0.8 0.3 0.5];
y3=[2.5 4 6.8 1.8];
y4=[0.2 2.4 0.6 1.8];
[ax,h1,h3]=plotyy(x,y1,x,y3,'plot'); hold on
set(h1,'linestyle','-','color','b') ;
set(h3,'linestyle','-.','color','r');
title('Labeling plotyy');%题目
[legh,objh,outh,outm]=legend([h1 h3],'实部','虚部',1)
;%加legend标注两条线
legh2=copyobj(legh,gcf);%赋值句柄,不需要理解!
xlabel('时间/s'); %x轴标准
set(get(ax(1),'Ylabel'),'string','加速度/g'); %左边轴标准
set(get(ax(2),'Ylabel'),'string','速度km/h'); %又边轴标准
set(ax(1),'XColor','k','YColor','b'); %两个轴颜色
set(ax(2),'XColor','k','YColor','r');
%注意下面两个的区间长度要相等!!1
set(ax(1),'ylim',[0,10],'ytick',[0:2:10]); %左轴的范围
set(ax(2),'ylim',[-2,8],'ytick',[-4:2:8]); %右轴的范围
[bx,h2,h4]=plotyy(x,y2,x,y4);
set(h2,'linestyle','-','color','b') ;
set(h4,'linestyle','-.','color','r');
set(bx(1),'XColor','k','YColor','b'); %两个轴颜色
set(bx(2),'XColor','k','YColor','r');
%同上设置!!1
set(bx(1),'ylim',[0,10],'ytick',[0:2:10]); %左轴的范围
set(bx(2),'ylim',[-2,8],'ytick',[-4:2:8]); %右轴的范围
legend([h2 h4],'实部','虚部',2) ;%加legend标注两条线
注意:其中一个legend在图中比较小,可以打开figure
properties图像编辑一下,即可。其他标注也可以在里面修改。
郁闷啊!~刚摸索完发现同学早已经画出来了,更过分的是用excel画的,彻底打败了