注册 登录
编程论坛 Matlab

[求助]这样的图形怎么通过编程来显示呀。。。。。

cad1980 发布于 2006-09-23 11:12, 799 次点击
各位请问在一个图中同时显示三条曲线,其中两条是局部显示,它们的Y坐标是相互独立的,X坐标是共用的就像下边这个图一样,在MATLAB中应该怎么编程呀。。。。。。
只有本站会员才能查看附件,请 登录

7 回复
#2
danger8882006-09-23 16:54
plot(yy) 就可以,如果需要局部,就用axis来设置,OK?
#3
lengxin2006-09-23 18:14
hao hao  、看看java2d啊 ,
#4
cad19802006-09-23 20:27

感谢高手的指点。。。。致礼
我按照这个方法试了。。。可是再将第二个曲线局部化后,当画第三个曲线时坐标独立不出来,还用的是第二个坐标!
能不能在说的具体点。。。谢谢了

#5
zhangenter2006-09-24 22:59
plotyy用的是两个坐标轴拼起来的,你这个问题需要用三个坐标轴拼,一个大的画消耗率,消耗量和排气温度各用一个坐标拼起来,有点麻烦,但是实现起来并不太难
#6
cad19802006-09-25 15:38

您说的太对了。。。。
我用plotyy试过了,可是当画第3个曲线时就不行了!
虽然有点麻烦,但您能告诉我具体怎么做吗?
万分感激。。。。。。最好能说的详细点

#7
zhangenter2006-09-26 12:44
举个例子吧:
t = 0:0.1:10;
ax(1) = axes('position',[.1 .1 .8 .85]);
plot(t,tan(t), 'k');
set(ax(1), 'box','off','xgrid','on','ygrid','on');
xlabel('x轴');xlabel('Y轴1');

ax(2) = axes('position','[.1 .1 .8 .4]);
plot(t, cos(t), 'r');
set(ax(2), 'Yaxislocation','right','color','none','ycolor','r','box','off');
xlabel('Y轴2');

ax(3) = axes('position',[.1 .55 .8 .4]);
plot(t, sin(t), 'b');
set(ax(3), 'YaxisLocation','right','color','none','ycolor','b',...
'xaxislocation','top','xtick',[],'box','off');
xlabel('Y轴3');
#8
cad19802006-09-26 14:28

非常感谢zhangenter同志,在你的启示下我已经做出来了。。。。

这是我做出来的图:

[IMG]C:\Documents and Settings\tian\桌面\1.bmp[/IMG]

再次万分感谢。。。。。。。。
1