数据处理-scipy 三维插值 RegularGridInterpolator
scipy 三维插值
现有一组 mesh datagrid 数据,主要包括坐标及该坐标对应的value。
1 | data = """ |
插值获取其中任意一点 value。
对这种规则的 mesh datagrid 可以直接使用 RegularGridInterpolator
ref https://docs.scipy.org/doc/scipy/reference/generated/scipy.interpolate.RegularGridInterpolator.html
scipy.interpolate.RegularGridInterpolator(points, values, method='linear', bounds_error=True, fill_value=nan, *, solver=None, solver_args=None)
参数 | 定义 | 说明 |
---|---|---|
points | n维规则网格 | 数据格式举例:三维数据 (x,y,z) |
x,y,z 的shape分别为 m1,m2,m3 , 必须严格为升序或者降序 | ||
values | 数据 | 数据格式举例:values |
values.shape 应该为 (m1,m2,m3) | ||
method | 插值算法 | 默认’linear’ |
可选’nearest’、’slinear’、’cubic’、’quintic’和’pchip’ | ||
bounds_error | 界内判定 | 默认True, 越界报错;如果False,则使用fill_value |
fill_value | 界外填充值 | 默认np.nan;如果None,则外推插值 |
solver | 求解器 | 插值算法为 ‘slinear’、’cubic’和’quintic’时可用 |
solver_args | 求解器参数 |
1 | import numpy as np |