使用Python的matplotlib在x轴上绘制日期

使用Python的matplotlib在x轴上绘制日期

我试图绘制日期信息。我有一个日期列表,格式为“01/02/1991”。

我通过执行以下操作转换它们:

x = parser.parse(date).strftime('%Y%m%d'))

这使 19910102

然后我尝试使用num2date

import matplotlib.dates as dates
new_x = dates.num2date(x)

绘图:

plt.plot_date(new_x, other_data, fmt="bo", tz=None, xdate=True)

但是我收到了一个错误。它说“ValueError:年份超出范围”。有解决方案吗


侃侃尔雅
浏览 867回答 2
2回答

不负相思意

x必须是一个浮点数给出自0001-01-01以来的天数加一。因此,19910102不是1991年1月2日,因为如果您从0001-01-01计算19910101天,您将获得54513年或类似的东西(除以365.25,一年中的天数)。datestr2num改为使用(见help(dates.datestr2num)):new_x = dates.datestr2num(date) # where date is '01/02/1991'
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python