Как создать столбчатую диаграмму с накоплением для моей проблемы? - PullRequest
0 голосов
/ 04 января 2019

У меня есть DataFrame df:

df = pd.DataFrame(columns=["Event_type","Delay_class"], 
                  data=[["A1",0],
                        ["A1",0],
                        ["A2",1],
                        ["A3",1],
                        ["A1",1],
                        ["A2",0]])

Я хочу создать столбчатую диаграмму с накоплением, в которой ось X равна Event_type, а каждый столбец состоит из количества значений на Delay_class.

В моем примере у меня есть 2 значения Delay_class. Это означает, что каждый столбец должен быть сложен из двух суббаров. Размер каждого суббара соответствует количеству классов задержки.

Например, для события A1 (ось X) значение оси Y будет 2 для Delay_class 0 и 1 для Delay_class 1. Общее значение Y для A1 будет 3.

Как я могу получить такую ​​столбчатую диаграмму с накоплением?

Вот что я пробовал:

df.set_index('Event_type').T.plot(kind='bar', stacked=True)

1 Ответ

0 голосов
/ 04 января 2019

Вам нужно crosstab + plot(kind='bar',stacked=True)

pd.crosstab(df.Event_type,df.Delay_class).plot(kind='bar',stacked=True)

enter image description here

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