2016-04-29 261 views
2

我试图在x = 1至10的单个图表中绘制3个图形,使用半圆图表示Y的10次方,但仅绘制了一个(最后一个)图形,并且剩下的仍然没有显示。在matlab中使用semilogy时无法显示多个图形

semilogy(x,getval4(x,5),'-og'); 
semilogy(x,getval4(x,10),'--Xb'); 
semilogy(x,getval4(x,20),'--r'); 

只有semilogy(x,getval4(x,20),'--r');绘制。我是新来的垫的实验室,请sujjest我的方式来绘制所有三个graphs.Also,我想有一个网格太

+0

['hold'(http://www.mathworks.com/help/matlab/ref/hold.html) – excaza

回答

3

你需要做的

semilogy(x,getval4(x,5),'-og'); 
hold on ; 
semilogy(x,getval4(x,10),'--Xb'); 
semilogy(x,getval4(x,20),'--r'); 

(注意保持后的第一semilogy,而不是之前)

+0

真棒!..这worked..Cheers! – Abx

+0

@Abx请将答案标为正确 – 16per9

2

另一种选择:

plot(x,getval4(x,5),'-og'); 
hold on ; 
plot(x,getval4(x,10),'--Xb'); 
plot(x,getval4(x,20),'--r'); 
set(gca,'yscale','log')