作业帮 > 综合 > 作业

问一个Matlab中mesh(x,y,z)的问题.

来源:学生作业帮 编辑:搜狗做题网作业帮 分类:综合作业 时间:2024/05/14 08:48:11
问一个Matlab中mesh(x,y,z)的问题.
clear;
x=-10:.02:10;
y=x;
Z=(x-2).^2+(y-1.2).^2;
subplot(1,2,1);
plot3(x,y,Z);
grid on;
subplot(1,2,2);
mesh(x,y,Z);
运行时出现这个;;;
Z must be a matrix,not a scalar or vector.
我想知道难道我这个Z不是矩阵吗?
问一个Matlab中mesh(x,y,z)的问题.
用mesh画三维图,先要meshgrid,就是将xoy平面用你定义的x,y向量网格化,之后对每一个得到的点求其对应的函数值,最后用mesh将函数图像做出来,你如果还有不清楚的地方,可以在command window 下敲“doc mesh”或是“doc meshgrid”..
还有,你代码中定义的Z是向量,不是矩阵.
下面是改过的代码
clear;
x=-10:.02:10;
y=x;
Z=(x-2).^2+(y-1.2).^2;
subplot(1,2,1);
plot3(x,y,Z);
grid on;
subplot(1,2,2);
[xx,yy]=meshgrid(x,y);
ZZ=(xx-2).^2+(yy-1.2).^2;
mesh(xx,yy,ZZ);
祝好!