2014-05-23 54 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