2014-05-23 51 views
0

我以爲我已經構建了一個無錯代碼,但它似乎沒有,而且我爲此感到很困惑。我的矩陣A,B和C包含64x64矩陣中的值(可根據運行情況更改大小,但它們在一次運行中都具有相同的常量大小)。數據維度上的衝浪錯誤

s = size(A) 

figure(1) 
set(gcf, 'renderer', 'zbuffer'); 
quiver(1:s(2),1:s(1),A,B); 
hold on; 
pcolor(1:s(2),1:s(1),C); 

figure(2) 
surf(s(2),s(1),A); 

figure(3) 
surf(s(2),s(1),B); 

figure(4) 
surf(s(2),s(1),C); 

它說

Error using surf (line 78) 
Data dimensions must agree 

我嘗試使用尺寸(A),以驗證,並且它是64×64,和S(1)= 64和S(2)= 64。我在s(1)之前放置了s(2),因爲由於某些原因,surf在第三個參數的列上應用了行維(我對此很困惑,但它不是問題)。

如果你想看:http://www.mathworks.com/help/matlab/ref/surf.html in surf(X,Y,Z)的描述。

回答

1

對於surf(X,Y,Z) X和Y必須是向量,而不是像你的情況那樣標量。在你的情況下,而不是s(1)你應該在那裏放置一個1x64向量。

你確定,衝浪是你想要的嗎?

+0

AAAAAH我明白了,我好蠢。謝了哥們! – Vissenbot