У меня есть фрейм данных, содержащий запросы на изменение (CR), систему, владельца и оценку (пример)
CR |system | owner | assessment
A1 |Alpha | Alice | good
A2 |Alpha | Alice | good
A3 |Alpha | Alice | bad
B2 |Bravo | Bob | bad
B3 |Bravo | Bob | good
B4 |Bravo | Bob | bad
Я пытаюсь создать график matplotlib для трех лучших систем с худшими показателямиоценки, но покажите гистограмму с накоплением в pyplot как с хорошими, так и с плохими значениями.
Этот код (CR был отброшен) дает мне правильную графику, но счет неправильный, так как он считает хорошие и плохие отдельно,
table = df.groupby(['system','owner']).assessment.value_counts().nlargest(3)
chart = table.plot.barh(stacked=True, color= ['red','green'], fontsize=12)
Таблица выглядит так (фактическая выдержка):
system owner assessment
ALPHA Alice good 75
bad 60
BRAVO Bob bad 57
Я попробовал несколько утверждений, чтобы вытащить топ-3 худших систем и показать график, который показывает как хорошиеи плохие значения на горизонтальном столбце с накоплением, но я не могу сделать оба одновременно.
Как сортировать по «плохим» числам (60 и 57), но показывать хорошие (75) и плохие (60) на одном и том же столбце с накоплением?И как я могу показать топ-3 худших систем (большинство плохих значений)?
Таким образом, результат сгруппированного бара, который я ищу, выглядит так:
Alpha BBBBBBBBBGGGGGGGGG
Bravo BBBBBBBBBBBBBB
Charlie BBBGGGGGGGG