2015-01-12 84 views
0

從Van Loan的繪圖工作科學計算導論。這是P1.2.4,以防有人想知道。我無法弄清楚爲什麼我的代碼產生一個單一的情節。Matlab繪圖,用一個腳本繪製多個圖

x=linspace(0,2*pi, 30); 
for k=1:5 
plot(x, sin(k*x)); 

end 

好像我需要做

plot(x, sin(x), x, sin(2*x), x, sin(3*x)....) 

但是,這似乎是手工編碼過量,有沒有更優雅的方式?

回答

1

您可以在for循環中使用hold on。您還需要使用plot中的'Color'字段來製作不同顏色的圖。在每次迭代中,只需選擇0到1之間的隨機數的三元組。

x=linspace(0,2*pi, 30); 
for k=1:5 
    plot(x, sin(k*x),'Color',rand(1,3));hold on; 
end 
hold off; 
1

要5個獨立的地塊?然後使用類似

for k=1:5 
figure 
plot(x, sin(k*x)); 
end 

或者所有情節在一個數字?在這種情況下使用「保持」

hold on 
for k=1:5 
plot(x, sin(k*x)); 
end 
hold off 

或第三方法:其中X和Y使用情節作爲矩陣