太好用了,发出来感慨一下
import numpy as np
# 曲线拟合
def formula(x,y):
x = np.array(x)
y = np.array(y)
# 3 表示想要拟合的最高次项是多少。
f1 = np.polyfit(x, y, 3)
# 拟合的多项式表达式
p1 = np.poly1d(f1)
# 绘图
# plt.plot(x, y, 's',label='original values')
# yvals = p1(x) #拟合y值
# plt.plot(x, yvals, 'r',label='polyfit values')
# plt.show()
return p1
f_HQ = formula(list1, list2)
# 带入函数求某点的值
print(f_HQ(1))