Группировка по нескольким годам в одном столбце и нанесение на график результата - PullRequest
0 голосов
/ 05 декабря 2018

У меня есть кадр данных, который выглядит следующим образом, с индексом панд по умолчанию, начинающимся с 0:

index     Year    Count    Name
0         2005    70000    Apple
1         2005    60000    Banana
2         2006    20000    Pineapple
3         2007    70000    Cherry
4         2007    60000    Coconut
5         2007    40000    Pear
6         2008    90000    Grape
7         2008    10000    Apricot

Я хотел бы создать столбчатую диаграмму с этими данными.Однако использование функции df.groupby () позволит мне вызывать такие функции, как .mean () или .count () для этих данных, чтобы построить график данных по годам.Я получаю следующий результат, который разделяет каждую точку данных и не группирует их по общему году.

enter image description here Я видел пример matplotlib для гистограмм с накоплением, но онисгруппированы по общему индексу, в этом случае у меня нет общего индекса, по которому я хочу построить график.Есть ли способ сгруппировать и отобразить эти данные, не переставляя весь фрейм данных?

1 Ответ

0 голосов
/ 05 декабря 2018

Если я вас правильно понял, вы могли бы сделать это сначала pivot:

df1 = pd.pivot_table(df, values='Count', index='Year', columns='Name')
df1.plot(kind='bar')

Вывод:

enter image description here Или с аргументом stacked=True:

df1.plot(kind='bar', stacked=True)

enter image description here

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