matlab中的meshgrid和生成网格是什么意思?

问题描述:

matlab中的meshgrid和生成网格是什么意思?
我试了下简单绘图,两个代码如下
theta=linspace(0,2*pi,100);fai=linspace(0,pi/2,100);
x=2.*sin(fai).*cos(theta);y=2.*sin(fai).*sin(theta);z=2.*cos(fai);
surf(x,y,z)
这样就有N个警报.改成
theta=linspace(0,2*pi,100);fai=linspace(0,pi/2,100);
[theta,fai]=meshgrid(theta,fai);
x=2.*sin(fai).*cos(theta);y=2.*sin(fai).*sin(theta);z=2.*cos(fai);
surf(x,y,z)
就OK了,书上说meshgrid是生成X-Y平面上的网格?搞不懂什么意思.烦请各位大侠赐教.
1个回答 分类:综合 2014-11-03

问题解答:

我来补答
surf你可以这样想.
一张坐标纸,当你知道每一个坐标点的高度数据时,是不是就有一个地形的立体形状.
所以你的坐标x,必须是这个坐标纸里面所有点的横坐标,
一般这样弄:
theta=linspace(0,2*pi,100);fai=linspace(0,pi/2,100);
[t,f]=meshgrid(theta,fai); %这个是画坐标纸上的点(当然这个是球坐标的)
x=2.*sin(f).*cos(t);y=2.*sin(f).*sin(t);z=2.*cos(f);
surf(x,y,z)
 
 
展开全文阅读
剩余:2000
上一页:一道物理提题