本文简要介绍 python 语言中 scipy.interpolate.InterpolatedUnivariateSpline
的用法。
用法:
class scipy.interpolate.InterpolatedUnivariateSpline(x, y, w=None, bbox=[None, None], k=3, ext=0, check_finite=False)#
给定数据点集的一维插值样条。
拟合度数的样条曲线 y = spl(x)k对提供的x,y数据。样条函数通过所有提供的点。相当于scipy.interpolate.UnivariateSpline和s= 0。
- x: (N,) 数组
数据点的输入维度 - 必须严格增加
- y: (N,) 数组
数据点的输入维度
- w: (N,) 数组, 可选
样条拟合的权重。必须是正的。如果无(默认),则权重均为 1。
- bbox: (2,) 类数组,可选
2-sequence 指定近似区间的边界。如果无(默认),
bbox=[x[0], x[-1]]
。- k: 整数,可选
平滑样条的程度。必须是
1 <= k <= 5
。默认值为k = 3
,三次样条。- ext: int 或 str,可选
控制不在节点序列定义的区间内的元素的外推模式。
如果 ext=0 或 ‘extrapolate’,则返回外推值。
如果 ext=1 或 ‘zeros’,返回 0
如果 ext=2 或‘raise’,则引发ValueError
如果‘const’的ext=3,返回边界值。
默认值为 0。
- check_finite: 布尔型,可选
是否检查输入数组是否仅包含有限数。禁用可能会提高性能,但如果输入确实包含无穷大或 NaN,则可能会导致问题(崩溃、非终止或无意义的结果)。默认为假。
参数 ::
注意:
数据点的数量必须大于样条度 k。
例子:
>>> import numpy as np >>> import matplotlib.pyplot as plt >>> from scipy.interpolate import InterpolatedUnivariateSpline >>> rng = np.random.default_rng() >>> x = np.linspace(-3, 3, 50) >>> y = np.exp(-x**2) + 0.1 * rng.standard_normal(50) >>> spl = InterpolatedUnivariateSpline(x, y) >>> plt.plot(x, y, 'ro', ms=5) >>> xs = np.linspace(-3, 3, 1000) >>> plt.plot(xs, spl(xs), 'g', lw=3, alpha=0.7) >>> plt.show()
请注意,
spl(x)
插值y:>>> spl.get_residual() 0.0
相关用法
- Python SciPy interpolate.make_interp_spline用法及代码示例
- Python SciPy interpolate.krogh_interpolate用法及代码示例
- Python SciPy interpolate.BSpline用法及代码示例
- Python SciPy interpolate.LSQSphereBivariateSpline用法及代码示例
- Python SciPy interpolate.griddata用法及代码示例
- Python SciPy interpolate.splder用法及代码示例
- Python SciPy interpolate.LinearNDInterpolator用法及代码示例
- Python SciPy interpolate.PPoly用法及代码示例
- Python SciPy interpolate.NdBSpline用法及代码示例
- Python SciPy interpolate.pade用法及代码示例
- Python SciPy interpolate.barycentric_interpolate用法及代码示例
- Python SciPy interpolate.RegularGridInterpolator用法及代码示例
- Python SciPy interpolate.NdPPoly用法及代码示例
- Python SciPy interpolate.interp2d用法及代码示例
- Python SciPy interpolate.approximate_taylor_polynomial用法及代码示例
- Python SciPy interpolate.RectSphereBivariateSpline用法及代码示例
- Python SciPy interpolate.sproot用法及代码示例
- Python SciPy interpolate.splantider用法及代码示例
- Python SciPy interpolate.CloughTocher2DInterpolator用法及代码示例
- Python SciPy interpolate.interp1d用法及代码示例
- Python SciPy interpolate.BPoly用法及代码示例
- Python SciPy interpolate.BarycentricInterpolator用法及代码示例
- Python SciPy interpolate.splrep用法及代码示例
- Python SciPy interpolate.make_smoothing_spline用法及代码示例
- Python SciPy interpolate.Rbf用法及代码示例
注:本文由纯净天空筛选整理自scipy.org大神的英文原创作品 scipy.interpolate.InterpolatedUnivariateSpline。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。