Я пытаюсь определить время, когда я ложусь спать каждый день, с днем на оси X и временем, когда я ложусь спать на оси Y.
Вот мой код и текущий вывод:
sleeptime = sleepdata['Start'].apply(lambda x: x.replace(year=2019, month=1, day=1)).tolist()
ax = plt.subplot()
ax.xaxis_date()
ax.yaxis.set_major_formatter(matplotlib.dates.DateFormatter('%H:%M'))
ax.plot(sleepdata['Date'], sleeptime, 'b')
Я бы хотел, чтобы метки оси Y начинались в 22:00 и заканчивались в3:00 вместо того, чтобы начинать в полночь и переходить на 24 часа назад к полуночи, потому что время, когда я ложусь спать до полуночи, заканчивается в самом верху графика, но я хочу, чтобы они были ниже точек, в которых я ложусь спатьпосле полуночи. Я пытался использовать
#ax.yaxis.set_major_locator(matplotlib.dates.HourLocator(byhour=[22,23,0,1,2,3]))
, но это просто выдает результат, который выглядит хуже. Какой лучший способ сдвинуть оси Y вверх на пару часов?