Interpolation (scipy.interpolate)¶
Sub-package for objects used in interpolation.
As listed below, this sub-package contains spline functions and classes, one-dimensional and multi-dimensional (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. |
PchipInterpolator(x, y[, axis, extrapolate]) |
PCHIP 1-d monotonic cubic interpolation. |
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. |
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-dimensional data. |
LinearNDInterpolator(points, values[, …]) |
Piecewise linear interpolant in N dimensions. |
NearestNDInterpolator(x, y) |
Nearest-neighbour interpolation in N dimensions. |
CloughTocher2DInterpolator(points, values[, tol]) |
Piecewise cubic, C1 smooth, curvature-minimizing interpolant in 2D. |
Rbf(*args) |
A class for radial basis function approximation/interpolation of n-dimensional scattered data. |
interp2d(x, y, z[, kind, copy, …]) |
Interpolate over a 2-D grid. |
For data on a grid:
interpn(points, values, xi[, method, …]) |
Multidimensional interpolation on regular grids. |
RegularGridInterpolator(points, values[, …]) |
Interpolation on a regular grid in arbitrary dimensions |
RectBivariateSpline(x, y, z[, bbox, kx, ky, s]) |
Bivariate spline approximation over a rectangular mesh. |
See also
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 B-spline. |
Functional interface to FITPACK routines:
splrep(x, y[, w, xb, xe, k, task, s, t, …]) |
Find the B-spline representation of 1-D curve. |
splprep(x[, w, u, ub, ue, k, task, s, t, …]) |
Find the B-spline representation of an N-dimensional 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, …]) |
One-dimensional smoothing spline fit to a given set of data points. |
InterpolatedUnivariateSpline(x, y[, w, …]) |
One-dimensional interpolating spline for a given set of data points. |
LSQUnivariateSpline(x, y, t[, w, bbox, k, …]) |
One-dimensional 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:
BivariateSpline |
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. |
Additional tools¶
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. |
See also
scipy.ndimage.map_coordinates,
scipy.ndimage.spline_filter,
scipy.signal.resample,
scipy.signal.bspline,
scipy.signal.gauss_spline,
scipy.signal.qspline1d,
scipy.signal.cspline1d,
scipy.signal.qspline1d_eval,
scipy.signal.cspline1d_eval,
scipy.signal.qspline2d,
scipy.signal.cspline2d.
Functions existing for backward compatibility (should not be used in new code):
spleval(*args, **kwds) |
spleval is deprecated! spleval is deprecated in scipy 0.19.0, use BSpline instead. |
spline(*args, **kwds) |
spline is deprecated! spline is deprecated in scipy 0.19.0, use Bspline class instead. |
splmake(*args, **kwds) |
splmake is deprecated! splmake is deprecated in scipy 0.19.0, use make_interp_spline instead. |
spltopp(*args, **kwds) |
spltopp is deprecated! spltopp is deprecated in scipy 0.19.0, use PPoly.from_spline instead. |
pchip |
alias of scipy.interpolate._cubic.PchipInterpolator |
