我正在绘制一些时间序列数据。我注意到,在绘制整个时间序列时,次要刻度(x轴)的间隔非常均匀。但是当我设置x轴限制(xlim
)时,突然次要刻度开始变得越来越不同步。
正如你所看到的,在2017-01到2017-04之间,次要的滴答声是完全均匀分布的,但在2017-07它稍微偏离,然后在2017-10及以后变得更糟。
代码及图:
plt.figure(figsize=(10,6))
plt.xlim(datetime(2017, 1, 1), datetime(2019, 1, 1))
plt.minorticks_on()
plt.plot(df['Date'], df['Price'])
有没有什么方法可以让次要的刻度间隔完全?刻度的数量并不重要,重要的是它们的间隔要均匀。我现在不关心y轴。
3条答案
按热度按时间zaqlnxep1#
您可以通过添加次要定位器(
set_minor_locator
)到您的代码并将其设置为月份来实现这一点,这将为每个月给予次要报价。更新了以下随机价格的示例代码...huus2vyu2#
您可以将
set_major_locator
和set_minor_locator
与matploltib
中的MultipleLocator
或AutoLocator
模块组合使用。6vl6ewon3#
多亏了@Redox,我才能想出一个解决方案:
基本上,我有条件地设置
YearLocator
或MonthLocator
,这取决于majorticklabels的格式分别是YYYY
还是YYYY-MM
。