我正在尝试使用matlab来计算使用复合梯形法则的函数的近似值,然后使用surf函数和bar3函数显示函数和近似值。问题是,当我尝试绘制函数surf(x,y,Z)时,我接收到错误并说尺寸不匹配。
我的问题是,当x,y和z数组的大小不同时,如何使用surf函数绘制3D图形。
我已经尝试创建相同大小的x和y数组的零函数,然后将我的值添加到每个,然后NaN'ing额外的0,但是因为你看到我的每个数组都以0开头在我的数组中找到零的NaN'ing将影响我的图形图。加上我仍然得到相同的错误“尺寸不匹配”所以我认为这是因为我的Z数组大于我的x和y。
我们将不胜感激。
我x和y的代码是: `
x = linspace(a,b,h); %h being 11 and breaks up the difference because datapoints a and b into h number of sub intervals
y = linspace(c,d,k); %k being 6 and breaks up the difference because data points c and d into k number of sub intervals
Z = zeros(h,k);
for i = 1:1:h
for j = 1:1:k
Z(i,j) = f(x(i),y(j));
end
end
冲浪(X,Y,Z); `
X
0 0.3000 0.6000 0.9000 1.2000 1.5000 1.8000 2.1000 2.4000 2.7000 3.0000
ý
0 0.6286 1.2571 1.8857 2.5143 3.1429
ž
0 0 0 0 0 0
0 0.1764 0.2854 0.2852 0.1761 -0.0004
0 0.3528 0.5707 0.5705 0.3522 -0.0008
0 0.5292 0.8561 0.8557 0.5283 -0.0011
0 0.7056 1.1415 1.1410 0.7044 -0.0015
0 0.8820 1.4268 1.4262 0.8804 -0.0019
0 1.0584 1.7122 1.7115 1.0565 -0.0023
0 1.2348 1.9975 1.9967 1.2326 -0.0027
0 1.4112 2.2829 2.2820 1.4087 -0.0030
0 1.5876 2.5683 2.5672 1.5848 -0.0034
0 1.7640 2.8536 2.8525 1.7609 -0.0038
使用冲浪时出错(第75行) 数据维度必须达成一致。
CompositeTrapazoidal中的错误> btnSolve_Callback(第167行) 冲浪(X,Y,Z);
答案 0 :(得分:1)
尝试surf(x,y,Z');
(因为x
的长度应与Z
的列数相匹配)