scipy.interpolate.RectBivariateSpline#

class RectBivariateSpline(x, y, z, bbox=[None, None, None, None], kx=3, ky=3, s=0)[source]#

Bivariate spline approximation over a rectangular mesh.

Can be used for both smoothing and interpolating data.

Parameters#

x,yarray_like

1-D arrays of coordinates in strictly ascending order. Evaluated points outside the data range will be extrapolated.

zarray_like

2-D array of data with shape (x.size,y.size).

bboxarray_like, optional

Sequence of length 4 specifying the boundary of the rectangular approximation domain, which means the start and end spline knots of each dimension are set by these values. By default, bbox=[min(x), max(x), min(y), max(y)].

kx, kyints, optional

Degrees of the bivariate spline. Default is 3.

sfloat, optional

Positive smoothing factor defined for estimation condition: sum((z[i]-f(x[i], y[i]))**2, axis=0) <= s where f is a spline function. Default is s=0, which is for interpolation.

See Also#

BivariateSpline :

a base class for bivariate splines.

UnivariateSpline :

a smooth univariate spline to fit a given set of data points.

SmoothBivariateSpline :

a smoothing bivariate spline through the given points

LSQBivariateSpline :

a bivariate spline using weighted least-squares fitting

RectSphereBivariateSpline :

a bivariate spline over a rectangular mesh on a sphere

SmoothSphereBivariateSpline :

a smoothing bivariate spline in spherical coordinates

LSQSphereBivariateSpline :

a bivariate spline in spherical coordinates using weighted least-squares fitting

bisplrep :

a function to find a bivariate B-spline representation of a surface

bisplev :

a function to evaluate a bivariate B-spline and its derivatives

Notes#

If the input data is such that input dimensions have incommensurate units and differ by many orders of magnitude, the interpolant may have numerical artifacts. Consider rescaling the data before interpolating.

__init__(x, y, z, bbox=[None, None, None, None], kx=3, ky=3, s=0)[source]#

Methods

__init__(x, y, z[, bbox, kx, ky, s])

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 approximation: sum ((w[i]*(z[i]-s(x[i],y[i])))**2,axis=0)

integral(xa, xb, ya, yb)

Evaluate the integral of the spline over area [xa,xb] x [ya,yb].

partial_derivative(dx, dy)

Construct a new spline representing a partial derivative of this spline.