线性插值法python示例
时间: 2023-08-11 17:08:18 浏览: 182
Python实现线性插值和三次样条插值的示例代码
5星 · 资源好评率100%
可以使用numpy库中的interp函数来实现线性插值。下面是一个示例代码:
```python
import numpy as np
from scipy.interpolate import interp1d
import matplotlib.pyplot as plt
# 原始数据
x = [1, 2, 3]
y = [3, 2, 0]
# 构建插值函数
f = interp1d(x, y, kind='linear')
# 构建新的x序列
xnew = np.linspace(1, 3, num=100)
# 进行线性插值
ynew = f(xnew)
# 绘制原始数据和插值结果的图像
plt.scatter(x, y, zorder=3)
plt.plot(xnew, ynew, marker='s', ls='--', c='C1')
plt.legend(['data', '线性插值'])
plt.xlabel('x')
plt.ylabel('y')
plt.grid(ls='--', alpha=0.5)
plt.show()
```
在这个示例中,我们使用了numpy的linspace函数来生成一个新的x序列,然后使用interp1d函数构建了一个线性插值函数f,最后使用这个函数对新的x序列进行插值得到y序列。最后,我们使用matplotlib库将原始数据和插值结果绘制在同一个图像上。
阅读全文