當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


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__。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。