Matplotlib-x轴与日期时间之间的间隔不均匀

时间:2019-01-06 00:22:49

标签: python pandas datetime matplotlib

我当前遇到一个问题,当在我的x轴上使用DatetimeIndex时,我的图上的刻度线之间的间隔似乎具有不均匀的间隔。代码如下:

x = pd.date_range('2018-11-03', '2018-12-30')
plt.plot(x, np.arange(len(x)))
plt.xticks(rotation=45)

enter image description here

请注意两个实例中的日期通常不增加7天的时间。即使延长了时间,问题仍然存在:

x = pd.date_range('2018-11-03', '2019-03-20')
plt.plot(x, np.arange(len(x)))
plt.xticks(rotation=45)

enter image description here

我如何覆盖此行为以在地块上使用标准的7天间隔?谢谢。

1 个答案:

答案 0 :(得分:2)

您可以使用matplotlib的行情自动收录器模块自定义行情位置:

import matplotlib.pyplot as plt
import pandas as pd
import matplotlib.ticker as ticker

x = pd.date_range('2018-11-03', '2019-03-20')
plt.plot(x, np.arange(len(x)))
plt.xticks(rotation=45)
ax=plt.gca()
ax.xaxis.set_major_locator(ticker.MultipleLocator(7))

上面的脚本返回以下图像:

enter image description here