Interpolation (scipy.interpolate
)#
Sub-package for functions and objects used in interpolation.
See the user guide for recommendations on choosing a routine, and other usage details.
Univariate interpolation#
make_interp_spline
(x, y[, k, t, bc_type, ...])
Create an interpolating B-spline with specified degree and boundary conditions.
CubicSpline
(x, y[, axis, bc_type, extrapolate])
Piecewise cubic interpolator to fit values (C2 smooth).
PchipInterpolator
(x, y[, axis, extrapolate])
PCHIP shape-preserving interpolator (C1 smooth).
Akima1DInterpolator
(x, y[, axis, method, ...])
Akima "visually pleasing" interpolator (C1 smooth).
FloaterHormannInterpolator
(points, values, *)
Floater-Hormann barycentric rational interpolator (C∞ smooth on real axis).
BarycentricInterpolator
(xi[, yi, axis, wi, ...])
Barycentric (Lagrange with improved stability) interpolator (C∞ smooth).
KroghInterpolator
(xi, yi[, axis])
Krogh interpolator (C∞ smooth).
CubicHermiteSpline
(x, y, dydx[, axis, ...])
Piecewise cubic interpolator to fit values and first derivatives (C1 smooth).
Low-level data structures for univariate interpolation:
Multivariate interpolation#
Unstructured data
LinearNDInterpolator
(points, values[, ...])
Piecewise linear interpolator in N > 1 dimensions.
NearestNDInterpolator
(x, y[, rescale, ...])
Nearest-neighbor interpolator in N > 1 dimensions.
CloughTocher2DInterpolator
(points, values[, ...])
Piecewise cubic, C1 smooth, curvature-minimizing interpolator in N=2 dimensions.
RBFInterpolator
(y, d[, neighbors, ...])
Radial basis function interpolator in N ≥ 1 dimensions.
For data on a grid:
RegularGridInterpolator
(points, values[, ...])
Interpolator of specified order on a rectilinear grid in N ≥ 1 dimensions.
Low-level data structures for tensor product polynomials and splines:
1-D spline smoothing and approximation#
make_lsq_spline
(x, y, t[, k, w, axis, ...])
Create a smoothing B-spline satisfying the Least SQuares (LSQ) criterion.
make_smoothing_spline
(x, y[, w, lam, axis])
Create a smoothing B-spline satisfying the Generalized Cross Validation (GCV) criterion.
make_splrep
(x, y, *[, w, xb, xe, k, s, t, nest])
Create a smoothing B-spline function with bounded error, minimizing derivative jumps.
make_splprep
(x, *[, w, u, ub, ue, k, s, t, nest])
Create a smoothing parametric B-spline curve with bounded error, minimizing derivative jumps.
generate_knots
(x, y, *[, w, xb, xe, k, s, nest])
Generate knot vectors until the Least SQuares (LSQ) criterion is satified.
Rational Approximation#
AAA
(x, y, *[, rtol, max_terms, clean_up, ...])
AAA real or complex rational approximation.
Interfaces to FITPACK routines for 1D and 2D spline fitting#
This section lists wrappers for FITPACK functionality for 1D and 2D smoothing splines. In most cases, users are better off using higher-level routines listed in previous sections.
1D FITPACK splines#
This package provides two sets of functionally equivalent wrappers: object-oriented and functional.
Functional FITPACK interface:
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 a B-spline and all its derivatives at one point (or set of points) up to order k (the degree of the spline), being 0 the spline itself.
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.
2D FITPACK splines#
For data on a grid:
RectBivariateSpline
(x, y, z[, bbox, kx, ky, ...])
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 (OOP interface):
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.
For unstructured data (functional interface):
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.
interpn
(points, values, xi[, method, ...])
Multidimensional interpolation on regular or rectilinear grids.
griddata
(points, values, xi[, method, ...])
Convenience function for interpolating unstructured data in multiple dimensions.
barycentric_interpolate
(xi, yi, x[, axis, ...])
Convenience function for barycentric interpolation.
krogh_interpolate
(xi, yi, x[, der, axis])
Convenience function for Krogh interpolation.
pchip_interpolate
(xi, yi, x[, der, axis])
Convenience function for pchip interpolation.
Rbf
(*args, **kwargs)
Class for radial basis function interpolation of functions from N-D scattered data to an M-D domain (legacy).
interp1d
(x, y[, kind, axis, copy, ...])
Interpolate a 1-D function (legacy).
interp2d
(x, y, z[, kind, copy, ...])
Class for 2D interpolation (deprecated and removed)