2014-09-24 114 views
2

当绘制下面的图表时,NSS1就是图表的顶部边界,因此很难看到。如何改变y轴的极限? `ylim`不起作用

我该如何改变Y轴的长度来说1.2,以便更清楚地看到NSS1?

lambda=5; 
tau=0:30; 

tau(1)=0.000001; 

NSS1=1*ones(1,31); 
NSS2=(1-exp(-tau/lambda))./(tau/lambda); 
NSS3=((1-exp(-tau/lambda))./(tau/lambda)-exp(-tau/lambda)); 

%ylim([0, 1.2]) 
plot(tau,NSS1,'-k*',tau,NSS2,'-k+',tau,NSS3,'-ko'); 
xlabel('t = 0 to 30y', 'FontSize',30) 
ylabel('yield','FontSize',30) 
+0

你的答案在你的代码... ylim评论( [0 1.2]) – 2014-09-24 16:12:39

+0

对不起,我想说我尝试过,但它似乎并没有工作? – Bazman 2014-09-24 16:20:18

+2

哦,好的。尝试在通话结束后放置线路以进行绘图;这应该工作 – 2014-09-24 16:24:47

回答

1

之所以ylim如果你把它之前绘图命令是没有axes对象时,它可以涉及到不起作用。

所以有两个选项

首先,创建一个axes对象,并使用hold on持有它,那么即将到来的plot绘制在同一轴线上。

ax = axes; hold on; 
ylim([0, 1.2]) 

plot(tau,NSS1,'-k*',tau,NSS2,'-k+',tau,NSS3,'-ko'); 

或第二,你plot首先,该命令会自动生成一个axes对象,你可以事后修改其y限制:

plot(tau,NSS1,'-k*',tau,NSS2,'-k+',tau,NSS3,'-ko'); 
ylim([0, 1.2])