我试图根据日期绘制一些数据,但我遇到了一个关于网格的问题.我想要在x轴上显示日期,主要刻度表示月份,次要刻度表示周.然而,对于网格,我只想看到较小的.在建造地块时,我注意到有一个part of the grid missing for November:
这是再现上述问题的最小示例.
from datetime import datetime
import matplotlib as mpl
from matplotlib import pyplot as plt
from matplotlib import dates as mdates
fig, ax = plt.subplots()
ax.xaxis.set_minor_locator(mdates.WeekdayLocator(byweekday=mdates.MO))
ax.xaxis.set_major_locator(mdates.MonthLocator())
ax.xaxis.set_major_formatter(
mdates.ConciseDateFormatter(mdates.AutoDateLocator())
)
ax.set_xlim(datetime(2021, 9, 1), datetime(2022, 1, 1))
ax.xaxis.grid(color="gray", linestyle="dashed", alpha=0.2, which="minor")
plt.show()
我假设这是因为不可见的主线与应该绘制的小线段重叠.有人能解释一下发生了什么以及如何解决这个问题吗?