在MATLAB 函数中, 使 v = f(x,y) 形式的曲面与向量 (x,y,v) 中的散点数据拟合
griddata 函数在 (xq,yq)指定的查询点对曲面进行插值并返回插入的值 vq。曲面始终穿过 x 和 y 定义的数据点。
语法:
vq = griddata(x,y,v,xq,yq)
vq = griddata(x,y,z,v,xq,yq,zq)
vq = griddata(___,method)
说明:
(1)vq = griddata(x,y,v,xq,yq)
使 v = f(x,y) 形式的曲面与向量 (x,y,v)
中的散点数据拟合。griddata
函数在 (xq,yq)
指定的查询点对曲面进行插值并返回插入的值 vq
。曲面始终穿过 x
和 y
定义的数据点。
(2)vq = griddata(x,y,z,v,xq,yq,zq)
拟合 v = f(x,y,z) 形式的超曲面。
(3)vq = griddata(___,method)
使用上述语法中的任何输入参数指定计算 vq
所用的插值方法。method
可以是'linear'
、'nearest'
、'natural'
、'cubic'
或 'v4'
。默认方法为 'linear'
。
使用注意:
不再支持特定于 Qhull 的选项。在您的代码中,请从向 griddata
传递 options
参数的所有实例中删除该参数。
在以后的版本中,griddata
不会接受混合方向的任何输入向量。此外,还将删除以下语法:
[Xq,Yq,Vq] = griddata(x,y,v,xq,yq) [Xq,Yq,Vq] = griddata(x,y,v,xq,yq, method) 要指定查询点网格,请用 ndgrid 或 meshgrid 构造一个完整网格,然后调用 griddata
例子:
x=[1,0.3,-0.5,0.7,0.9,-0.8,-0.2,0];
y=[-0.3,0.3,-1.5,-1.2,1.8,0,1.1,0.6];
f=[5.7,4.3,7.5,9,2.4,5.6,7.6,4];
X1=-1:0.1:1;
Y1=-2:0.1:2;
[X,Y,Z]=griddata(x,y,f,X1',Y1,'v4');
contourf(X,Y,Z,20);绘制云图
colorbar;绘制图例