本文簡要介紹 python 語言中 scipy.interpolate.RectBivariateSpline.ev
的用法。
用法:
RectBivariateSpline.ev(xi, yi, dx=0, dy=0)#
評估點處的樣條線
返回
(xi[i], yi[i]), i=0,...,len(xi)-1
處的插值。- xi, yi: array_like
輸入坐標。遵循標準 Numpy 廣播。軸的順序與
np.meshgrid(..., indexing="ij")
一致,與默認順序np.meshgrid(..., indexing="xy")
不一致。- dx: 整數,可選
x-derivative的訂單
- dy: 整數,可選
y-derivative的訂單
參數 ::
例子:
假設我們想要在二維上對一個指數衰減函數進行雙線性插值。
>>> import numpy as np >>> from scipy.interpolate import RectBivariateSpline >>> def f(x, y): ... return np.exp(-np.sqrt((x / 2) ** 2 + y**2))
我們在粗網格上對函數進行采樣並設置插值器。請注意,網格網格的默認
indexing="xy"
會在插值後導致意外(轉置)結果。>>> xarr = np.linspace(-3, 3, 21) >>> yarr = np.linspace(-3, 3, 21) >>> xgrid, ygrid = np.meshgrid(xarr, yarr, indexing="ij") >>> zdata = f(xgrid, ygrid) >>> rbs = RectBivariateSpline(xarr, yarr, zdata, kx=1, ky=1)
接下來,我們使用插值沿著更精細網格上的坐標空間的對角線切片對函數進行采樣。
>>> xinterp = np.linspace(-3, 3, 201) >>> yinterp = np.linspace(3, -3, 201) >>> zinterp = rbs.ev(xinterp, yinterp)
並檢查插值是否作為沿著切片距原點的距離的函數通過函數評估。
>>> import matplotlib.pyplot as plt >>> fig = plt.figure() >>> ax1 = fig.add_subplot(1, 1, 1) >>> ax1.plot(np.sqrt(xarr**2 + yarr**2), np.diag(zdata), "or") >>> ax1.plot(np.sqrt(xinterp**2 + yinterp**2), zinterp, "-b") >>> plt.show()
相關用法
- Python SciPy RectBivariateSpline.__call__用法及代碼示例
- Python SciPy RectSphereBivariateSpline.ev用法及代碼示例
- Python SciPy RectSphereBivariateSpline.__call__用法及代碼示例
- Python SciPy RealData.set_meta用法及代碼示例
- Python SciPy RegularGridInterpolator.__call__用法及代碼示例
- Python SciPy RelativeRiskResult.confidence_interval用法及代碼示例
- Python SciPy Rotation.from_matrix用法及代碼示例
- Python SciPy Rotation.__pow__用法及代碼示例
- Python SciPy Rotation.magnitude用法及代碼示例
- Python SciPy Rotation.as_matrix用法及代碼示例
- Python SciPy Rotation.as_euler用法及代碼示例
- Python SciPy Rotation.approx_equal用法及代碼示例
- Python SciPy Rotation.from_quat用法及代碼示例
- Python SciPy Rotation.as_mrp用法及代碼示例
- Python SciPy Rotation.from_mrp用法及代碼示例
- Python SciPy Rotation.__getitem__用法及代碼示例
- Python SciPy Rotation.from_rotvec用法及代碼示例
- Python SciPy Rotation.as_quat用法及代碼示例
- Python SciPy Rotation.__mul__用法及代碼示例
- Python SciPy Rotation.as_rotvec用法及代碼示例
- Python SciPy Rotation.apply用法及代碼示例
- Python SciPy Rotation.align_vectors用法及代碼示例
- Python SciPy Rotation.inv用法及代碼示例
- Python SciPy Rotation.random用法及代碼示例
- Python SciPy Rotation.from_euler用法及代碼示例
注:本文由純淨天空篩選整理自scipy.org大神的英文原創作品 scipy.interpolate.RectBivariateSpline.ev。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。