当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python SciPy RegularGridInterpolator.__call__用法及代码示例


本文简要介绍 python 语言中 scipy.interpolate.RegularGridInterpolator.__call__ 的用法。

用法:

RegularGridInterpolator.__call__(xi, method=None)#

在坐标处插值。

参数

xi ndarray 形状 (..., ndim)

评估插值器的坐标。

method str,可选

要执行的插值方法。支持“linear”, “nearest”, “slinear”, “cubic”, “quintic” 和“pchip”。默认值是创建插值器时选择的方法。

返回

values_x ndarray,形状 xi.shape[:-1] + values.shape[ndim:]

插值位于xi。请参阅注释以了解以下情况下的行为:xi.ndim == 1.

注意

xi.ndim == 1 的情况下,新轴被插入到返回数组 value_x 的 0 位置,因此其形状为 (1,) + values.shape[ndim:]

例子

这里我们定义了一个简单函数的nearest-neighbor插值器

>>> import numpy as np
>>> x, y = np.array([0, 1, 2]), np.array([1, 3, 7])
>>> def f(x, y):
...     return x**2 + y**2
>>> data = f(*np.meshgrid(x, y, indexing='ij', sparse=True))
>>> from scipy.interpolate import RegularGridInterpolator
>>> interp = RegularGridInterpolator((x, y), data, method='nearest')

通过构造,插值器使用 nearest-neighbor 插值

>>> interp([[1.5, 1.3], [0.3, 4.5]])
array([2., 9.])

然而,我们可以通过覆盖方法参数来评估线性插值

>>> interp([[1.5, 1.3], [0.3, 4.5]], method='linear')
array([ 4.7, 24.3])

相关用法


注:本文由纯净天空筛选整理自scipy.org大神的英文原创作品 scipy.interpolate.RegularGridInterpolator.__call__。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。