Аннотировать столбцы со значениями на графиках панд для подзаговоров - PullRequest
0 голосов
/ 11 октября 2019

Я пытаюсь комментировать бары на барплоте панд. Мой следующий код работает для одного сюжета без субплотов, но, к сожалению, не для субплотов.

    df=pd.DataFrame({'A':np.random.rand(2),'B':np.random.rand(2)},index=['2018-10-30 12:00:00','2018-10-30 12:15:00',] )         
print(df)

fig, ax = plt.subplots()

df.plot.bar(ax=ax, title='My Barplots',subplots = False, sharex=True, sharey=True)
for p in ax.patches:
    ax.annotate(str(round(p.get_height(),2)), (p.get_x() * 1.005, p.get_height() * 1.005))

plt.gcf().autofmt_xdate()
plt.show()

В тот момент, когда я заменяю "subplots = False" на "subplots = True", аннотации больше не отображаются.

Может кто-нибудь помочь, как заставить эту работу работать с подсюжетами?

1 Ответ

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

Спасибо за ваши комментарии. Теперь я нашел решение.

    df=pd.DataFrame({'A':np.random.rand(2),'B':np.random.rand(2)},index=['2018-10-30 12:00:00','2018-10-30 12:15:00',] )         
print(df)

axes = df.plot.bar( title='My Barplots',subplots = True, sharex=True, sharey=True)
for ax in axes:
    for p in ax.patches:
        ax.annotate(str(round(p.get_height(),2)), (p.get_x() * 1.005, p.get_height() * 1.005))

plt.gcf().autofmt_xdate()
plt.show()

Я сделал второй цикл по осям фигуры. Это работает.

enter image description here

...