Дата составления графика и час в MatplotLib - PullRequest
0 голосов
/ 13 марта 2019

У меня есть данные, которые выглядят так:

Date        Hour    Count1          Count2          Count3
2019-03-12  0       2459416         2459384         2459416
2019-03-12  1       1735044         1735094         1735044
2019-03-12  2       1137516         1137523         1137516
2019-03-12  3       813602          813603          813602
2019-03-12  4       728658          728637          728658

и продолжаются в течение пары дней.Мне очень нравится форматирование даты и часа в Excel, но я не могу понять, как этого добиться в Matplotlib.Я пытался объединить дату и час, чтобы создать столбец datetime, но мне было сложно со значениями Int для даты.Мне также нравится чистое форматирование, которое Excel дает мне на оси Y, когда они разделены.

enter image description here

1 Ответ

2 голосов
/ 13 марта 2019

Следующее будет работать с текущими версиями matplotlib.

import numpy as np
import matplotlib.pyplot as plt
import matplotlib.dates as mdates


t = np.arange("2019-03-11 00:00", "2019-03-13 08:00", dtype=np.datetime64)
x = np.cumsum(np.random.randn(len(t)))

fig, ax = plt.subplots()

ax.plot(t,x)

ax.xaxis.set_major_locator(mdates.HourLocator(12))
ax.xaxis.set_major_formatter(mdates.DateFormatter("%Y-%b-%d"))

ax.xaxis.set_minor_locator(mdates.HourLocator(np.arange(0,24,2)))
ax.xaxis.set_minor_formatter(mdates.DateFormatter("%H"))

ax.tick_params(which="major", axis="x", pad=14, size=2)
ax.tick_params(which="minor", axis="x", labelsize=8)

plt.show()

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...