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, zarray_like
1-D sequences of data points (order is not important).
- warray_like, optional
Positive 1-D sequence of weights, of same length as x, y and z.
- bboxarray_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, kyints, optional
Degrees of the bivariate spline. Default is 3.
- sfloat, 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]
.- epsfloat, 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__
(self, x, y[, dx, dy, grid])Evaluate the spline or its derivatives at given positions.
ev
(self, xi, yi[, dx, dy])Evaluate the spline at points
get_coeffs
(self)Return spline coefficients.
get_knots
(self)Return a tuple (tx,ty) where tx,ty contain knots positions of the spline with respect to x-, y-variable, respectively.
get_residual
(self)Return weighted sum of squared residuals of the spline approximation: sum ((w[i]*(z[i]-s(x[i],y[i])))**2,axis=0)
integral
(self, xa, xb, ya, yb)Evaluate the integral of the spline over area [xa,xb] x [ya,yb].