2010-11-15 198 views
2

我有包含55列和24行的數據。我想要做的是每1列圖5列。 (更具體地說...列1-5圖1,列6-10圖2 ....等等)多列分組和繪圖

每次我嘗試for循環時,我都迷路了。誰能幫我? 這似乎很簡單,但我仍然在學習如何使用matlab。

謝謝您的HEP

回答

3

您可以遍歷的5組:

my_array = zeros(24,55); 
% fill my_array 

for k = 1:11 
    values_to_plot = my_array(:,5 * (k-1) + 1 : 5 * k); 
    figure; 
    plot(values_to_plot); 
end 
+0

您似乎有逆轉行和列。 – gnovice 2010-11-15 16:57:42

+0

這可能性更大:-) – 2010-11-15 18:56:51

+0

@gnovice:fixed – 2010-11-15 18:57:22

1

要繪製每列作爲一個單獨的圖形,在5組一個數字,您可以使用此:

A = rand(24,55); % the size of your array 
for k=1:11 
    firstCol = (k-1)*5+1; 
    lastCol = k*5; 
    figure 
    plot(A(:,firstCol:lastCol)); 
end 

注意,A(:,c)是A的第c列,A(:,C1:C2)從C1到C2的列,包括端值。