matlab已知(x,y,z)怎么画三维曲面图?谢谢!

如题所述

如果不是网格点数据,那么请用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
温馨提示:答案为网友推荐,仅供参考
第1个回答  2018-02-01
如果不是网格点数据,那么请用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
第2个回答  2011-09-09
采用插值法
参考http://zhidao.baidu.com/question/175906491.html#here
知道了一些点(x,y,z)坐标,怎样用MATLAB绘制出三维曲面?来自:求助得到的回答本回答被网友采纳
第2个回答  2011-09-09
plot3(x.y.z)
相似回答