Ось Y в формате ЧЧ: мм с секундами - PullRequest
0 голосов
/ 01 октября 2019

У меня есть массив панд с включенным столбцом секунд. Теперь я хочу отформатировать только эти оси Y в формате чч: мм из этих секунд - вместо секунд только из этого столбца.

введите описание изображения здесь

Ответы [ 3 ]

0 голосов
/ 01 октября 2019

Попробуйте этот код:

import matplotlib.pyplot as plt
from matplotlib import dates

# fake data
arr_data = range(0, 4)
arr_secs = [52000, 53000, 54000, 55000]

# format seconds to date with this format '%H:%M:%S'
arr__secs_formatted = list(map(datetime.datetime.strptime, map(lambda s: time.strftime('%H:%M:%S', time.gmtime(s)), arr_secs), len(arr_secs)*['%H:%M:%S']))

fig, ax = plt.subplots()
ax.plot(arr_data, arr_secs_formatted, 'ro-')

# set your date formatter whit this format '%H:%M'
formatter = dates.DateFormatter('%H:%M')
ax.yaxis.set_major_formatter(formatter)

plt.show()

enter image description here

0 голосов
/ 02 октября 2019

Проблема решена! Большое спасибо!!! Я не знаю разницу между разбросом и графиком, но я изменил стиль линии на «o», и это работает для меня.

0 голосов
/ 01 октября 2019

попробуйте

 plt.yticks(ylim, [str(n).zfill(2) + ':00' for n in np.arange(0, 24, 1)])
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...