scipy.interpolate.
krogh_interpolate#
- scipy.interpolate.krogh_interpolate(xi, yi, x, der=0, axis=0)[源代码]#
用于多项式插值的便捷函数。
有关更多详细信息,请参阅
KroghInterpolator
。- 参数:
- xiarray_like
插值点(已知的 x 坐标)。
- yiarray_like
已知的 y 坐标,形状为
(xi.size, R)
。解释为长度为 R 的向量,如果 R=1,则为标量。- xarray_like
要计算导数的点或点。
- derint 或 list 或 None,可选
要计算多少个导数,或者 None 表示所有可能非零的导数(即,一个等于点数的数字),或者要计算的导数列表。此数字包括作为“第 0 阶”导数的函数值。
- axisint,可选
yi 数组中与 x 坐标值对应的轴。
- 返回:
- dndarray
如果插值器的值是 R 维的,那么返回的数组将是导数的数量乘以 N 乘以 R。如果 x 是标量,则中间维度将被删除;如果 yi 是标量,则最后一个维度将被删除。
另请参阅
KroghInterpolator
Krogh 插值器
注释
构造插值多项式是一个相对昂贵的过程。 如果要重复评估它,请考虑使用类 KroghInterpolator(这是此函数使用的)。
示例
我们可以使用 Krogh 插值法对 2D 观测数据进行插值
>>> import numpy as np >>> import matplotlib.pyplot as plt >>> from scipy.interpolate import krogh_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 = krogh_interpolate(x_observed, y_observed, x) >>> plt.plot(x_observed, y_observed, "o", label="observation") >>> plt.plot(x, y, label="krogh interpolation") >>> plt.legend() >>> plt.show()