(1)设定双Y坐标
x=0:0.1:2*pi;
y1=sin(x);
y2=cos(x);
y3=1-sin(x);
[AX]=plotyy(x,y1,x,y2); %双Y坐标的建立
hold on;
plot(x,y3); %左侧坐标再叠加波形
set(get(gca,'xlabel'),'string','X-axis');
set(get(AX(1),'Ylabel'),'string','left Y-axis');
set(get(AX(2),'Ylabel'),'string','right Y-axis');
set(gca,'xTick',[0:0.5:7]); %设定X坐标范围
set(AX(1),’ylim‘,[-1,2],'yTick',[-1:0.2:2]); %设定左侧Y坐标范围
set(AX(2),'ylim',[-1,1],'yTick',[-1:0.5:1]); %设定右侧Y坐标范围
本程序可以在左侧再叠加分析,至于在右侧再叠加波形待解决。。。
ylabel('voltage(V)') % 坐标轴上加文字
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
补充:两种设X轴坐标范围的方法
(1)[AX,H1,H2]=plotyy(s,X,s,Y,'plot'); %双Y坐标的建立
set(gca,'xlim',[0.06,0.08],'xtick',[0.06:0.05:0.08]); %设定X坐标范围
只能针对左边坐标
(2)[AX,H1,H2]=plotyy(s,X,s,Y,'plot'); %双Y坐标的建立
set(AX(1),'xlim',[0.06,0.08],'ylim',[-40,40],'ytick',[-40:10:40]); %设定左侧X,Y坐标范围
set(AX(2),'xlim',[0.06,0.08],'ylim',[-600,600],'yTick',[-600:300:600]); %设定右侧X,Y坐标范围
此方法的一个问题,无法改变其中一个坐标轴图形的颜色
(2)设定双X与双Y坐标
具有两个纵坐标标度的图形
在MATLAB中,如果需要绘制出具有不同纵坐标标度的两个图形,可以使用plotyy绘图函数。调用格式为:
plotyy(x1,y1,x2,y2)
其中x1,y1对应一条曲线,x2,y2对应另一条曲线。横坐标的标度相同,纵坐标有两个,左纵坐标用于x1,y1数据对,右纵坐标用于x2,y2数据对。
双y轴坐标可以用plotyy(x,y1,x,y2)来实现
双x坐标可以用
set(gca,'xaxislocation','bottom','xticklabel',{'0','1','2','3','4'}) (假设x轴的标注为1,2,3,4)
set(gca,'xaxislocation','top','xticklabel',{'0','1','2','3','4'})
进行相应的设置
【 * 例 10.7.3 -1 】制作一个双坐标系用来表现高压和低温两个不同量的过渡过程。
tp=(0:100)/100*5;yp=8+4*(1-exp(-0.8*tp).*cos(3*tp)); % 压力数据
tt=(0:500)/500*40;yt=120+40*(1-exp(-0.05*tt).*cos(tt)); % 温度数据
% 产生双坐标系图形
%<4>生成一个窗口
%设定左边的X、Y轴
%<6>定义两个变量。给下一语句使用
%<7> X轴被分了10格,Y轴被分了6格,pxtick,pytick分别表示向量
%画出虚线格,'Xgrid','on','Ygrid','on'起到画虚线的作用
%<9>画一yp波形,对波形进行颜色设置
% X横坐标命名
%Y坐标命名
h_at=axes('Position',get(h_ap,'Position')); %<12>
set(h_at,'Color','none','Xcolor','r','Ycolor','r'); %<13>
set(h_at,'Xaxislocation','top') %<14>
set(h_at,'Yaxislocation','right','Ydir','rev') %<15> % 以上四句语句实现了上X坐标,右Y坐标
set(get(h_at,'Xlabel'),'String','/fontsize{15}/fontname{ 隶书 } 时间 /rightarrow (分) ')
set(get(h_at,'Ylabel'),'String',' ( {/circ}C )/fontsize{15} /leftarrow /fontname{ 隶书 } 零下温度 ')
set(h_at,'Ylim',[0,210]) %<18>
%<19>画yt波形,切记不能缺少Parent
%<20>定义新变量
%<21> xpm(1)为0,xpm(2)为40,在哪条语句定义的?
%Y坐标分格
set(h_at,'Xtick',txtick,'Ytick',tytick) %<23>
---------------------------------