我是Python的新手,我正在尝试曲线拟合正弦数据,这样我就可以分析极端最小/最大值。下面您将看到绘制的所有数据的图表,然后x轴限制为一个极端最大值。
def func(x, a, b, h, c):
return (a * np.sin(b *(x-h)) + c)
params, extras= curve_fit(func, x, y)
plt.plot(x, func(x, params[0], params[1], params[2], params[3]), c='r')
plt.scatter(x, y)
plt.xlim(55007, 55010)
plt.ylim(.98,1.02)
plt.title("Binary Star System")
plt.xlabel("MJD")
plt.ylabel("Flux")
plt.legend(["fit", "data"])
plt.show()
X和y是NumPy数组。是否有正弦图的曲线拟合函数?无论我尝试什么样的曲线拟合代码,我总是以一个有点水平的线条结束,我不知道为什么。提前致谢。