【发布时间】:2018-01-03 12:58:53
【问题描述】:
当我使用 scipy curve_fit 将我的数据拟合到这个函数时,我得到了一个奇怪的结果。
def func(t, freq, offset, a0, b0, a1, b1, a2, b2, a3, b3):
return (
+ a0*np.sin(2.*0*np.pi*freq*t)
+ b0*np.cos(2.*0*np.pi*freq*t)
+ a1*np.sin(2.*1*np.pi*freq*t)
+ b1*np.cos(2.*1*np.pi*freq*t)
+ a2*np.sin(2.*2*np.pi*freq*t)
+ b2*np.cos(2.*2*np.pi*freq*t)
+ a3*np.sin(2.*3*np.pi*freq*t)
+ b3*np.cos(2.*3*np.pi*freq*t)
+ offset)
合身本身还可以,唯一的问题是线条凹凸不平。由于我只用常数拟合正弦和余弦,这怎么可能发生?这是在 matplotlib 还是在 curve_fitting 函数中发生的?另一件事是,取决于我是否在函数中添加了更多或更少的项,该函数要么自己平滑,要么再次变得颠簸。
【问题讨论】:
标签: python matplotlib scipy curve-fitting