在 Matplotlib 中将所有时间刻度偏移一定量?

Shift all time ticks by some amount in Matplotlib?

我在 Matplotlib 的 x 轴上显示时间(小时、分钟)刻度

plt.gca().xaxis.set_major_formatter(matplotlib.dates.DateFormatter("%H:%M"))

但是,实际情况是我的报价不是“不错”的数字。刻度的自动定位给了我 10:34、11:04、11:34 等,而我想要 10:30、11:00、11:30 等.

如何将报价调整到我想要的时间?有没有办法在使用时间(在我的示例中为 4 分钟)时将所有刻度数移动一定数量?

尝试使用 MinuteLocator 将报价限制在第 0 分钟和第 30 分钟:

minloc = matplotlib.dates.MinuteLocator(byminute=[0, 30])
plt.gca().xaxis.set_major_locator(minloc)