关于在Matlab中,用双坐标轴画图后,不能排列多个双坐标图形的问题

程序如下:
subplot(2,1,1)
x=0:0.1:2*pi;
y1=sin(x);
y2=cos(x);
[ax,h1,h2]=plotyy(x,y1,x,y2); %h-- line handle
set(get(ax(1),'Ylabel'),'string','color','r') %y1
set(get(ax(2),'Ylabel'),'string','color','k') %y2

% box off
set(ax(:),'Ycolor','k') %设定两个Y轴的颜色为黑色
set(ax(1),'ytick',[-1:0.1:1]); %设置y轴间隔
set(ax(2),'ytick',[-1:0.1:1])
set(ax,'xlim',[0 6]) % 设置x轴范围
hold on

subplot(2,1,2)
x=0:0.1:2*pi;
y1=0.5*sin(2*x);
y2=-0.5*sin(2*x);
[ax,h1,h2]=plotyy(x,y1,x,y2); %h-- line handle
set(get(ax(1),'Ylabel'),'string','color','r') %y1
set(get(ax(2),'Ylabel'),'string','color','k') %y2

% box off
set(ax(:),'Ycolor','k') %设定两个Y轴的颜色为黑色
set(ax(1),'ytick',[-1:0.1:1]); %设置y轴间隔
set(ax(2),'ytick',[-1:0.1:1])
set(ax,'xlim',[0 6]) % 设置x轴范围
hold on

运行后,只出来subplot(2,1,1),后面的subplot(2,1,2)却出不来,不知道是何种原因。
分数不是很多,麻烦大家帮忙指导一下如何进行修改(如果可以,麻烦列出具体修改结果,本人新手),使得图形能够用subplot排列。非常感谢!

请复制运行,得到正解
subplot(2,1,1)
x=0:pi/100:2*pi;
y1=sin(x);
y2=cos(x);
[ax,h1,h2]=plotyy(x,y1,x,y2); %h-- line handle
set(get(ax(1),'Ylabel'),'string','r') %y1'color',
set(get(ax(2),'Ylabel'),'string','k') %y2'color'
set(findobj('Type','line'),'Color','k') %,
% box off
set(ax(:),'Ycolor','k') %设定两个Y轴的颜色为黑色
set(ax(1),'ytick',[-1:0.1:1]); %设置y轴间隔
set(ax(2),'ytick',[-1:0.1:1])
set(ax,'xlim',[0 6]) % 设置x轴范围
hold on
subplot(2,1,2)
x=0:pi/100:2*pi;
y1=0.5*sin(2*x);
y2=-0.5*sin(2*x);
[ax,h1,h2]=plotyy(x,y1,x,y2); %h-- line handle
set(get(ax(1),'Ylabel'),'string','r') %y1,'color'
set(get(ax(2),'Ylabel'),'string','k') %y2,'color'
% box off
set(ax(:),'Ycolor','k') %设定两个Y轴的颜色为黑色
set(ax(1),'ytick',[-1:0.1:1]); %设置y轴间隔
set(ax(2),'ytick',[-1:0.1:1])
set(ax,'xlim',[0 6]) % 设置x轴范围
hold on
温馨提示:答案为网友推荐,仅供参考
相似回答