我有一组符合二阶多项式的数据。然后,我使用plt.scatter()绘制数据点,并使用plt.plot()绘制结果拟合曲线。奇怪的是,我在图形上看到了两条曲线,而得到的拟合参数仅为3(也就是说,一个二阶多项式)。我听不懂我还尝试在另一个程序上使用相同的参数绘制曲线,但得到的曲线只有我预期的那样。有人帮忙吗?谢谢
这是我得到2条曲线的程序
这就是峰的样子-> [1721.64052934 3791.89782429 4285.67013482 837.99662477 1949.75202969 250.4119814]
peaks = np.asarray(peaks)
sigma_peaks = np.asarray(sigma_peaks)
x = [511,1173.237,1332.501,215.98,583.20,59.54]
x = np.asarray(x)
plt.figure(figsize=(20,10))
plt.scatter(x,peaks,label='data')
params, params_covariance = optimize.curve_fit(fitmodel.pol1, x, peaks)
print(params)
perr = np.sqrt(np.diag(params_covariance))
print(perr)
plt.plot(x, fitmodel.pol1(x, *params), label='fit', color = 'red')
plt.ylabel('Peak position')
plt.xlabel('Energy (keV)')
plt.grid()
plt.legend()
plt.show()