【MATLAB编程实例练习】-(18)已知三维坐标画出三维曲面图

代码及说明:

clear
%x、y 和 v 是包含分散(非均匀)样本点和数据的向量
x = rand(1,100);
y = rand(1,100);
v = x.^2+2*y.^2-x+y-2.*x.*y;

%定义一个规则网格并在该网格上插入散点数据。
[xq,yq] = meshgrid(linspace(min(x),max(x)),linspace(min(y),max(y)));
vq = griddata(x,y,v,xq,yq);

%将网格数据绘制为网格,将散点数据绘制为点。
mesh(xq,yq,vq)
hold on
plot3(x,y,v,'*')

结果:
【MATLAB编程实例练习】-(18)已知三维坐标画出三维曲面图_第1张图片
注意:griddata函数是基于散乱数据点生成局部区域的插值,是“内插”的,即插值点必须处于输入样本x和y的”包围“状态中,否则就会报NaN插值结果。

你可能感兴趣的:(MATLAB编程实例练习,几何学)