在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;绘制图例

Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐