Python 试图用Lowess平滑datetime

Python 试图用Lowess平滑datetime,python,matplotlib,decimal,Python,Matplotlib,Decimal,我有4个数据帧,我用移动平均线绘制。我已经附上了下面输出图的图像以及上面的代码 plt.figure(figsize = (16,6)) plt.plot(df_testy2.date, df_testy2.pandas_SMA_3, label = "bj") plt.plot(df_testyhd2.date, df_testyhd2.pandas_SMA_3, label = 'hd') plt.plot(df_testybr2.date, df_testybr2.pa

我有4个数据帧,我用移动平均线绘制。我已经附上了下面输出图的图像以及上面的代码

plt.figure(figsize = (16,6))
plt.plot(df_testy2.date, df_testy2.pandas_SMA_3, label = "bj")
plt.plot(df_testyhd2.date, df_testyhd2.pandas_SMA_3, label = 'hd')
plt.plot(df_testybr2.date, df_testybr2.pandas_SMA_3, label = 'breyers')
plt.plot(df_testytal2.date, df_testytal2.pandas_SMA_3, label = 'talenti')
plt.legend()
plt.show()

正如你所看到的,我得到了我想要的结果,但它看起来非常参差不齐。我想试着用洛斯来抚平这条线。目前,我正在尝试使用以下其中一行代码:

import matplotlib.pyplot as plt
import statsmodels.api as sm
import numpy as np
from decimal import Decimal

plt.figure(figsize = (16,6))

x = df_testy2.date
y = df_testy2.pandas_SMA_3
# z = sm.nonparametric.lowess(y, x, frac= 1./3, it=3)

z = sm.nonparametric.lowess(y, x)

plt.plot(x, y, color='dodgerblue')
plt.plot(z[:,0], z[:,1], 'ro-')

plt.show()
但是,我得到了以下错误:

溢出错误:int太大,无法转换

我尝试使用Decimal(),因为我读到了可以修复它的内容,但我不知道在代码中应该在哪里使用Decimal(),或者它是否可以工作

请帮忙

谢谢