matlab画函数图像问题急求

我在matlab中画图像代码如下xa=0:1:10;ya=xa;[x,y]=meshgrid(xa,ya);z=(1-exp(-0.1842*x)*((1-cos((2*... 我在matlab中画图像代码如下 xa = 0:1:10;ya = xa;[x,y] = meshgrid(xa,ya);z = (1-exp(-0.1842*x)*((1-cos((2*pi*y)/40))/2))mesh(x,y,z);为什么这个代码画出来的值都是一样的是个平面。然后换个只有X的函数的图像又正常代码如下xa = 0:1:10;ya = xa;[x,y] = meshgrid(xa,ya);% calculate z dataz =(1-exp(-0.1842*x))mesh(x,y,z); 最后又换了个2元函数代码如下 xa = -2:0.2:2;ya = xa;[x,y] = meshgrid(xa,ya);z = x*exp(-x^2 - y^2);mesh(x,y,z);这是为什么啊,我第一个函数为啥出来的是个平面 展开
 我来答
兔子和小强
2017-12-01 · TA获得超过6943个赞
知道大有可为答主
回答量:3332
采纳率:74%
帮助的人:1360万
展开全部

在求z时应该用点乘,表示元素相乘:

z = (1-exp(-0.1842*x) .* ((1-cos((2*pi*y)/40))/2));
                      ^^______ 点乘

在不用点乘的时候,因为meshgrid后x每一行都一样,y每一列都一样,所以矩阵相乘后四个常数矩阵。

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式