scipy.interpolate.SmoothBivariateSpline¶
-
class
scipy.interpolate.
SmoothBivariateSpline
(x, y, z, w=None, bbox=[None, None, None, None], kx=3, ky=3, s=None, eps=None)[source]¶ Smooth bivariate spline approximation.
Parameters: x, y, z : array_like
1-D sequences of data points (order is not important).
w : array_like, optional
Positive 1-D sequence of weights, of same length as x, y and z.
bbox : array_like, optional
Sequence of length 4 specifying the boundary of the rectangular approximation domain. By default,
bbox=[min(x,tx),max(x,tx), min(y,ty),max(y,ty)]
.kx, ky : ints, optional
Degrees of the bivariate spline. Default is 3.
s : float, optional
Positive smoothing factor defined for estimation condition:
sum((w[i]*(z[i]-s(x[i], y[i])))**2, axis=0) <= s
Defaults=len(w)
which should be a good value if1/w[i]
is an estimate of the standard deviation ofz[i]
.eps : float, optional
A threshold for determining the effective rank of an over-determined linear system of equations. eps should have a value between 0 and 1, the default is 1e-16.
See also
bisplrep
- an older wrapping of FITPACK
bisplev
- an older wrapping of FITPACK
UnivariateSpline
- a similar class for univariate spline interpolation
LSQUnivariateSpline
- to create a BivariateSpline using weighted
Notes
The length of x, y and z should be at least
(kx+1) * (ky+1)
.Methods
__call__
(x, y[, mth, dx, dy, grid])Evaluate the spline or its derivatives at given positions. ev
(xi, yi[, dx, dy])Evaluate the spline at points get_coeffs
()Return spline coefficients. get_knots
()Return a tuple (tx,ty) where tx,ty contain knots positions of the spline with respect to x-, y-variable, respectively. get_residual
()Return weighted sum of squared residuals of the spline integral
(xa, xb, ya, yb)Evaluate the integral of the spline over area [xa,xb] x [ya,yb].