scipy.interpolate.NearestNDInterpolator#
- class NearestNDInterpolator(x, y, rescale=False, tree_options=None)[source]#
NearestNDInterpolator(x, y).
Nearest-neighbor interpolator in N > 1 dimensions.
Added in version 0.9.
Methods#
__call__
Parameters#
- x(npoints, ndims) 2-D ndarray of floats
Data point coordinates.
- y(npoints, ) 1-D ndarray of float or complex
Data values.
- rescaleboolean, optional
Rescale points to unit cube before performing interpolation. This is useful if some of the input dimensions have incommensurable units and differ by many orders of magnitude.
Added in version 0.14.0.
- tree_optionsdict, optional
Options passed to the underlying
cKDTree.Added in version 0.17.0.
See Also#
- griddata :
Interpolate unstructured D-D data.
- LinearNDInterpolator :
Piecewise linear interpolator in N dimensions.
- CloughTocher2DInterpolator :
Piecewise cubic, C1 smooth, curvature-minimizing interpolator in 2D.
interpn : Interpolation on a regular grid or rectilinear grid. RegularGridInterpolator : Interpolator on a regular or rectilinear grid
in arbitrary dimensions (interpn wraps this class).
Notes#
Uses
scipy.spatial.cKDTreeNote
For data on a regular grid use interpn instead.
Examples#
We can interpolate values on a 2D plane:
>>> from scipy.interpolate import NearestNDInterpolator >>> import numpy as np >>> import matplotlib.pyplot as plt >>> rng = np.random.default_rng() >>> x = rng.random(10) - 0.5 >>> y = rng.random(10) - 0.5 >>> z = np.hypot(x, y) >>> X = np.linspace(min(x), max(x)) >>> Y = np.linspace(min(y), max(y)) >>> X, Y = np.meshgrid(X, Y) # 2D grid for interpolation >>> interp = NearestNDInterpolator(list(zip(x, y)), z) >>> Z = interp(X, Y) >>> plt.pcolormesh(X, Y, Z, shading='auto') >>> plt.plot(x, y, "ok", label="input point") >>> plt.legend() >>> plt.colorbar() >>> plt.axis("equal") >>> plt.show()
Check shape of points and values arrays, and reshape values to (npoints, nvalues). Ensure the points and values arrays are C-contiguous, and of correct type.
- __init__(x, y, rescale=False, tree_options=None)[source]#
Check shape of points and values arrays, and reshape values to (npoints, nvalues). Ensure the points and values arrays are C-contiguous, and of correct type.
Methods
__init__(x, y[, rescale, tree_options])Check shape of points and values arrays, and reshape values to (npoints, nvalues).