问一个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);gridon;subpl... 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不是矩阵吗?
展开
jiangbb1990
推荐于2018-03-29 · TA获得超过160个赞
知道答主
回答量:19
采纳率:100%
帮助的人:30.3万
展开全部
用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);
祝好!!!
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式