我有一个用matplotlib.dates.date2num
格式化的日期列表和一个整数列表。我正在尝试在x轴上绘制带有日期的折线图。但是,使用Python 3时,matplotlib并不总是能正确绘制日期。但是,我注意到,使用Python 2时,这并不是问题。
这是我的代码:
fig, ax = plt.subplots()
plt.title(constants.chart_title)
plt.xlabel('X-Axis')
plt.ylabel('Y-Axis ')
fig.autofmt_xdate()
plt.plot_date(;ist_of_formatted_dates, list_of_integers)
plt.savefig('chart.png')
下面是一个示例,该示例使用2个不同版本的python输出相同的脚本:
使用Python 3时,好像matplotlib正在绘制所有奇数天,而且问题是March具有31天,因此即使所有其他奇数都相隔03-31和04-01天相隔2天。
对此有任何解决方法吗?
答案 0 :(得分:0)
多亏了乔迪·克里玛(Jody Klymak),我才得以解决。在保存图表之前,我添加了几行代码:
ion-content{
--webkit-transform-style: preserve-3d;
--webkit-backface-visibility: hidden;
}
plt.xticks()
locator = mpd.AutoDateLocator(interval_multiples=False)
ax.xaxis.set_major_locator(locator)
更改了Python 3的一些默认kwarg,因此最后两行代码只是将其更改回了原来的行为。并且matplotlib
确保日期格式正确。