pchip_interpolate#
- scipy.interpolate.pchip_interpolate(xi, yi, x, der=0, axis=0)[Quelle]#
Hilfsfunktion für die PCHIP-Interpolation.
xi und yi sind Arrays von Werten, die zur Annäherung einer Funktion f verwendet werden, mit
yi = f(xi). Der Interpolator verwendet monotoine kubische Splines, um den Wert neuer Punkte x und die Ableitungen dort zu finden.Siehe
scipy.interpolate.PchipInterpolatorfür Details.- Parameter:
- xiarray_like
Eine sortierte Liste von x-Koordinaten der Länge N.
- yiarray_like
Ein 1D-Array von reellen Werten. Die Länge von yi entlang der Interpolationsachse muss gleich der Länge von xi sein. Bei einem N-D-Array verwenden Sie den Parameter axis, um die richtige Achse auszuwählen.
- xSkalar oder array_like
Länge M.
- derint oder Liste, optional
Zu extrahierende Ableitungen. Die 0-te Ableitung kann enthalten sein, um den Funktionswert zurückzugeben.
- axisint, optional
Achse im yi-Array, die den x-Koordinatenwerten entspricht.
- Rückgabe:
- ySkalar oder array_like
Das Ergebnis, von Länge R oder Länge M oder M mal R.
Siehe auch
PchipInterpolatorPCHIP 1D monotoiner kubischer Interpolator.
Beispiele
Wir können 2D beobachtete Daten mittels PCHIP-Interpolation interpolieren
>>> import numpy as np >>> import matplotlib.pyplot as plt >>> from scipy.interpolate import pchip_interpolate >>> x_observed = np.linspace(0.0, 10.0, 11) >>> y_observed = np.sin(x_observed) >>> x = np.linspace(min(x_observed), max(x_observed), num=100) >>> y = pchip_interpolate(x_observed, y_observed, x) >>> plt.plot(x_observed, y_observed, "o", label="observation") >>> plt.plot(x, y, label="pchip interpolation") >>> plt.legend() >>> plt.show()