已知大量无规律三维坐标点,如何用Matlab绘制出三维曲面?

我的数据是这样的:xyz4.694302-0.744050.6302324.774346-0.118920.6096374.733710.4893630.744239……... 我的数据是这样的:
x y z

4.694302
-0.74405
0.630232

4.774346
-0.11892
0.609637

4.73371
0.489363
0.744239
……
有好多这样的数据,我想绘制出一个三维曲面出来,我在网上搜了一些,用mesh的话先用meshgrid生成网格,但是我的z的值还要插值才行……请问下具体怎么做?谢谢了!
展开
 我来答
杨好巨蟹座
2015-10-25 · TA获得超过5万个赞
知道大有可为答主
回答量:6197
采纳率:80%
帮助的人:1308万
展开全部
看这些点是不是很规矩的网格点的数据。
如果是网格点数据,适当做点重组,就可以用surf函数得到曲面图。
如果不是网格点数据,那么请用griddata函数插值到网格点数据,然后再surf

如:
data=[
1 1 5.14
1 2 9.56
1 3 8.66
2 1 12.55
2 2 10.51
2 3 2.7
3 1 22.03
3 2 22.97
3 3 32.94
4 2 55.58
4 3 24.55
]; %第一列为x,第二列为y,第三列为z

[xx,yy]=meshgrid(1:4,1:3); %生成网格点
zz=griddata(data(:,1),data(:,2),data(:,3),xx,yy,'v4');%你的数据得插值成网格型数据。
surf(xx,yy,zz)
shading interp
showtime_97
2014-05-22 · TA获得超过4784个赞
知道大有可为答主
回答量:1005
采纳率:90%
帮助的人:834万
展开全部
2.5维数据插值和网格化是matlab的软肋,实际上是不能满足实际无规律(不是有函数关系的meshgride生成的)的数据成图的,你需要第三方软件对z按xy来网格化,可以使用surfer8软件,grid数据,才能在matlab中成图。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式