Ошибка ключа: 0 построение меток в Matplotlib

#python #pandas #matplotlib

#python #панды #matplotlib

Вопрос:

Я немного новичок в matplotlib. Я пытаюсь построить метки для каждой координаты (x, y) на моем линейном графике. Я получаю Keyerror: 0 для этой строки кода: x = df[i][‘DATE_DATE’]

Когда я запускаю print(df[‘DATE_DATE’]), я получаю следующие значения:

 0     Sep 29
1     Sep 30
2     Oct 01
3     Oct 02
4     Oct 03
5     Oct 04
6     Oct 05
7     Oct 06
8     Oct 07
9     Oct 08
10    Oct 09
11    Oct 10
12    Oct 11
13    Oct 12
  

Вот весь код для контекста:

 import matplotlib.pyplot as plt
from connect_to_db import get_df2

df = get_df2()
df['DATE_DATE'] = df['DATE_DATE'].dt.strftime('%b %d')

ax = df.plot(x='DATE_DATE', y='Sum', fontsize=10, color='#5C7AA6', linewidth=2.0, legend=False,
             xlabel='', ylabel='Sum', figsize=(10, 5)).grid(axis='y')

for i in range(len(df)):
    x = df[i]['DATE_DATE']
    y = df[i]['Sum']
    plt.plot(x, y, 'bo')
    plt.text(x * (1   0.01), y * (1   0.01), i, fontsize=12)

plt.show()
  

Есть идеи относительно того, почему я получаю Keyerror в этом цикле for, когда в этом столбце появляются объекты?

Спасибо за помощь!

Комментарии:

1. похоже, у вас индексирование в обратном направлении — попробуйте распечатать x[0]["DATE_DONE"] , это должно выдать ошибку ключа. Теперь попробуйте распечатать x["DATE_DONE"][0]

2. Ну, это действительно неудобно. Спасибо за помощь!

3. случается с лучшими из нас!