You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在指定x值处获取插值样条曲线对应的y值?

从样条曲线提取指定x值对应的y值

要获取样条曲线上指定x值对应的y值,直接使用scipy.interpolate模块中的splev函数即可实现,以下是针对你需求的完整示例:

import numpy as np
import matplotlib.pyplot as plt
from scipy.interpolate import splev, splrep

# 原始数据点
x = np.linspace(0, 10, 10)
y = np.sin(x)

# 生成样条拟合模型
spl = splrep(x, y)

# 提取x=0.25对应的y值
target_x = 0.25
target_y = splev(target_x, spl)
print(f"x=0.25 对应的 y 值:{target_y}")

# 可视化验证(可选)
x_curve = np.linspace(0, 10, 50)  # 用更密集的点绘制样条曲线
y_curve = splev(x_curve, spl)
plt.plot(x, y, 'o', label='原始数据点')
plt.plot(x_curve, y_curve, label='样条曲线')
plt.scatter(target_x, target_y, color='red', s=80, label='x=0.25 对应点')
plt.legend()
plt.show()

核心逻辑说明

  • splrep(x, y):根据原始x、y数据集生成样条插值的核心参数(节点、系数、阶数),返回的spl是后续插值计算的关键模型。
  • splev(target_x, spl):传入目标x值(支持单个值或数组形式的多个值)和样条模型,直接输出对应的插值结果y值。

内容的提问来源于stack exchange,提问作者shoggananna

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.20 23:24:31