import numpy as np
import matplotlib.pyplot as plt
import math
x=np.array([17,35,244,237,246,247,246,249,245,242,238])
y=np.array([30.2,40.3,68.6,49.6,64.3,64,60.2,68,76.7,44.8,49.3])
p3 = np.poly1d(np.polyfit(np.log(x), y, 1))
print(p3)
x = np.arange(0, 255, 0.02)
y= p3(x)
yvals=p3(x) # 可直接使用yvals=np.polyval(z1,xxx)
plt.plot(x, y, "*",label="original values")
plt.plot(x, yvals, "r",label="polyfit values")
plt.xlabel("x axis")
plt.ylabel("y axis")
plt.legend(loc=4) # 指定legend在图中的位置,类似象限的位置
plt.title("polyfitting")
plt.show()
最小二乘法拟合曲线
最新推荐文章于 2021-05-12 16:30:23 发布