Interpolation (`scipy.interpolate`)#

Sub-package for objects used in interpolation.

As listed below, this sub-package contains spline functions and classes, 1-D and multidimensional (univariate and multivariate) interpolation classes, Lagrange and Taylor polynomial interpolators, and wrappers for FITPACK and DFITPACK functions.

Univariate interpolation#

 `interp1d`(x, y[, kind, axis, copy, ...]) Interpolate a 1-D function. `BarycentricInterpolator`(xi[, yi, axis]) The interpolating polynomial for a set of points `KroghInterpolator`(xi, yi[, axis]) Interpolating polynomial for a set of points. `barycentric_interpolate`(xi, yi, x[, axis]) Convenience function for polynomial interpolation. `krogh_interpolate`(xi, yi, x[, der, axis]) Convenience function for polynomial interpolation. `pchip_interpolate`(xi, yi, x[, der, axis]) Convenience function for pchip interpolation. `CubicHermiteSpline`(x, y, dydx[, axis, ...]) Piecewise-cubic interpolator matching values and first derivatives. `PchipInterpolator`(x, y[, axis, extrapolate]) PCHIP 1-D monotonic cubic interpolation. `Akima1DInterpolator`(x, y[, axis]) Akima interpolator `CubicSpline`(x, y[, axis, bc_type, extrapolate]) Cubic spline data interpolator. `PPoly`(c, x[, extrapolate, axis]) Piecewise polynomial in terms of coefficients and breakpoints `BPoly`(c, x[, extrapolate, axis]) Piecewise polynomial in terms of coefficients and breakpoints.

Multivariate interpolation#

Unstructured data:

 `griddata`(points, values, xi[, method, ...]) Interpolate unstructured D-D data. `LinearNDInterpolator`(points, values[, ...]) Piecewise linear interpolant in N > 1 dimensions. `NearestNDInterpolator`(x, y[, rescale, ...]) NearestNDInterpolator(x, y). `CloughTocher2DInterpolator`(points, values[, ...]) CloughTocher2DInterpolator(points, values, tol=1e-6). `RBFInterpolator`(y, d[, neighbors, ...]) Radial basis function (RBF) interpolation in N dimensions. `Rbf`(*args, **kwargs) A class for radial basis function interpolation of functions from N-D scattered data to an M-D domain. `interp2d`(x, y, z[, kind, copy, ...]) Deprecated since version 1.10.0.

For data on a grid:

 `interpn`(points, values, xi[, method, ...]) Multidimensional interpolation on regular or rectilinear grids. `RegularGridInterpolator`(points, values[, ...]) Interpolation on a regular or rectilinear grid in arbitrary dimensions. `RectBivariateSpline`(x, y, z[, bbox, kx, ky, s]) Bivariate spline approximation over a rectangular mesh.

Tensor product polynomials:

 `NdPPoly`(c, x[, extrapolate]) Piecewise tensor product polynomial

1-D Splines#

 `BSpline`(t, c, k[, extrapolate, axis]) Univariate spline in the B-spline basis. `make_interp_spline`(x, y[, k, t, bc_type, ...]) Compute the (coefficients of) interpolating B-spline. `make_lsq_spline`(x, y, t[, k, w, axis, ...]) Compute the (coefficients of) an LSQ (Least SQuared) based fitting B-spline. `make_smoothing_spline`(x, y[, w, lam]) Compute the (coefficients of) smoothing cubic spline function using `lam` to control the tradeoff between the amount of smoothness of the curve and its proximity to the data.

Functional interface to FITPACK routines:

 `splrep`(x, y[, w, xb, xe, k, task, s, t, ...]) Find the B-spline representation of a 1-D curve. `splprep`(x[, w, u, ub, ue, k, task, s, t, ...]) Find the B-spline representation of an N-D curve. `splev`(x, tck[, der, ext]) Evaluate a B-spline or its derivatives. `splint`(a, b, tck[, full_output]) Evaluate the definite integral of a B-spline between two given points. `sproot`(tck[, mest]) Find the roots of a cubic B-spline. `spalde`(x, tck) Evaluate all derivatives of a B-spline. `splder`(tck[, n]) Compute the spline representation of the derivative of a given spline `splantider`(tck[, n]) Compute the spline for the antiderivative (integral) of a given spline. `insert`(x, tck[, m, per]) Insert knots into a B-spline.

Object-oriented FITPACK interface:

 `UnivariateSpline`(x, y[, w, bbox, k, s, ext, ...]) 1-D smoothing spline fit to a given set of data points. `InterpolatedUnivariateSpline`(x, y[, w, ...]) 1-D interpolating spline for a given set of data points. `LSQUnivariateSpline`(x, y, t[, w, bbox, k, ...]) 1-D spline with explicit internal knots.

2-D Splines#

For data on a grid:

 `RectBivariateSpline`(x, y, z[, bbox, kx, ky, s]) Bivariate spline approximation over a rectangular mesh. `RectSphereBivariateSpline`(u, v, r[, s, ...]) Bivariate spline approximation over a rectangular mesh on a sphere.

For unstructured data:

 Base class for bivariate splines. `SmoothBivariateSpline`(x, y, z[, w, bbox, ...]) Smooth bivariate spline approximation. `SmoothSphereBivariateSpline`(theta, phi, r[, ...]) Smooth bivariate spline approximation in spherical coordinates. `LSQBivariateSpline`(x, y, z, tx, ty[, w, ...]) Weighted least-squares bivariate spline approximation. `LSQSphereBivariateSpline`(theta, phi, r, tt, tp) Weighted least-squares bivariate spline approximation in spherical coordinates.

Low-level interface to FITPACK functions:

 `bisplrep`(x, y, z[, w, xb, xe, yb, ye, kx, ...]) Find a bivariate B-spline representation of a surface. `bisplev`(x, y, tck[, dx, dy]) Evaluate a bivariate B-spline and its derivatives.

 `lagrange`(x, w) Return a Lagrange interpolating polynomial. `approximate_taylor_polynomial`(f, x, degree, ...) Estimate the Taylor polynomial of f at x by polynomial fitting. `pade`(an, m[, n]) Return Pade approximation to a polynomial as the ratio of two polynomials.
`pchip` is an alias of `PchipInterpolator` for backward compatibility (should not be used in new code).