SmoothBivariateSpline#
- class scipy.interpolate.SmoothBivariateSpline(x, y, z, w=None, bbox=[None, None, None, None], kx=3, ky=3, s=None, eps=1e-16)[source]#
平滑雙變數樣條近似。
- 參數:
- x, y, zarray_like
資料點的一維序列 (順序不重要)。
- warray_like, 選擇性
權重的正數一維序列,長度與 x、y 和 z 相同。
- bboxarray_like, 選擇性
長度為 4 的序列,指定矩形近似域的邊界。預設情況下,
bbox=[min(x), max(x), min(y), max(y)]
。- kx, ky整數, 選擇性
雙變數樣條的次數。預設值為 3。
- s浮點數, 選擇性
為估計條件定義的正平滑因子:
sum((w[i]*(z[i]-s(x[i], y[i])))**2, axis=0) <= s
預設值s=len(w)
,如果1/w[i]
是z[i]
標準差的估計值,則這應該是一個好的值。- eps浮點數, 選擇性
用於確定超定線性方程組有效秩的閾值。eps 的值應在開區間
(0, 1)
內,預設值為 1e-16。
另請參閱
BivariateSpline
雙變數樣條的基底類別。
UnivariateSpline
用於擬合給定資料點集的平滑單變數樣條。
LSQBivariateSpline
使用加權最小平方擬合的雙變數樣條
RectSphereBivariateSpline
球體上矩形網格上的雙變數樣條
SmoothSphereBivariateSpline
球座標中的平滑雙變數樣條
LSQSphereBivariateSpline
球座標中使用加權最小平方擬合的雙變數樣條
RectBivariateSpline
矩形網格上的雙變數樣條
bisplrep
用於尋找曲面雙變數 B 樣條表示的函數
bisplev
用於評估雙變數 B 樣條及其導數的函數
註解
x、y 和 z 的長度應至少為
(kx+1) * (ky+1)
。如果輸入資料的輸入維度具有不可公約的單位,並且相差多個數量級,則內插器可能會出現數值偽影。考慮在內插之前重新縮放資料。
此常式透過 FITPACK 演算法自動建構樣條節點向量。樣條節點可能會放置在遠離資料點的位置。對於某些資料集,即使透過
s=0
參數請求,此常式也可能無法建構內插樣條。在這種情況下,建議直接使用bisplrep
/bisplev
,而不是此常式,並且如果需要,請增加bisplrep
的nxest
和nyest
參數的值。對於線性內插,請優先使用
LinearNDInterpolator
。請參閱https://gist.github.com/ev-br/8544371b40f414b7eaf3fe6217209bff
進行討論。方法
__call__
(x, y[, dx, dy, grid])在給定位置評估樣條或其導數。
ev
(xi, yi[, dx, dy])在點上評估樣條
傳回樣條係數。
傳回一個元組 (tx, ty),其中 tx, ty 分別包含樣條相對於 x、y 變數的節點位置。
傳回樣條近似的平方殘差的加權和:sum ((w[i]*(z[i]-s(x[i],y[i])))**2,axis=0)
integral
(xa, xb, ya, yb)評估樣條在區域 [xa, xb] x [ya, yb] 上的積分。
partial_derivative
(dx, dy)建構一個新的樣條,表示此樣條的偏導數。