Гистограмма графика панд с datetime64 - PullRequest
0 голосов
/ 08 ноября 2018

У меня есть следующий фрейм данных:

gr_data = data.groupby([pd.Grouper(key='date', freq='W-SUN')])['name'].count()


print(gr_data)

    date
    2018-08-19     582
    2018-09-02    1997
    2018-09-16    3224
    2018-10-07    4282
    2018-10-28    5618
    2018-11-04    5870
    Freq: W-SUN, Name: name, dtype: int64

Я строю эти данные, используя plot.bar ()

'date' относится к типу datetime64[ns].

Когда я строю график, видны часы / минуты / секунды. Как сбросить часы / минуты / секунды? enter image description here

1 Ответ

0 голосов
/ 08 ноября 2018

Вы должны конвертировать их с strfttime.Возможно, вы захотите убедиться, что dates отсортированы перед построением графика, поэтому всегда отображаются в порядке времени.

import matplotlib.pyplot as plt

gr_data.sort_index(inplace=True) #Ensure plotting in time order

fig, ax = plt.subplots()
gr_data.assign(dates = gr_data.index.strftime('%Y-%m-%d')).plot(kind='bar', x='dates', ax=ax)

fig.autofmt_xdate()  #Rotate the dates so they aren't squished
plt.show()

enter image description here

...