matlab已知点的坐标,绘制三维图请给出示例和详解

发布时间:2021-02-26 02:48:45

matlab已知点的坐标,绘制三维图请给出示例和详解

网友回答

用plot3,不过效果不太好.可以考虑画等高线,或者画柱状图来体现落差.
如果是函数的话,就用surf.
======以下答案可供参考======
供参考答案1:
用plot3(x,y,z)
供参考答案2:
clear all;
clcclose all
temdat=load('F:\test.txt');
x=temdat(:,1);
y=temdat(:,2);
z=temdat(:,3);
minx = min(x);
maxx = max(x);
miny = min(y);
maxy = max(y);
xtemp=linspace(min(x),max(x),1000);%1000这个是选择的数值样本大小,越大曲线越平滑%
ytemp=linspace(min(y),max(y),1000);
[X,Y]=meshgrid(xtemp,ytemp);
Z=griddata(x,y,z,X,Y,'cubic');%cubic的选取参照文档最下方关于griddata的说明,有时用nearest和V4会出现异常点%
surf(X,Y,Z)
shading interp
test的文档部分截图:
差值通常使用的interp和griddata的区别:
二者均是常用的二维插值方法,两者的区别是,
interp2的插值数据必须是矩形域(X,Y必须分别是单调向量),即已知数据点(x,y)组成规则的矩阵,或称之为栅格,可使用meshgid生成。
griddata函数的已知数据点(X,Y)不要求规则排列,特别是对试验中随机没有规律采取的数据进行插值具有很好的效果。
griddata 调用方法:
ZI = griddata(x,y,z,XI,YI)
[XI,YI,ZI] = griddata(x,y,z,XI,YI)
[...] = griddata(...,method)
[...] = griddata(...,method,options)
method 的值 为
'linear' -- 则,以三角形为基础的线性内插
'cubic' -- 则,以三角形为基础的三次方程内插
'nearest' -- 则,用最邻近的点 内插
'v4'-- -- 则,MATLAB 4 格点样条函数内插
默认'linear' 线性内插
以上问题属网友观点,不代表本站立场,仅供参考!