Создание кластерной гистограммы, Панды - PullRequest
0 голосов
/ 04 декабря 2018

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

    Word   Percentage1  Percentage2
1   drink   18.166654   29.014272
2   cherry  13.498262   12.802642
3   berry   9.810123    6.775552
4   plum    7.964429    7.105845
5   crisp   7.892941    4.715009
...
50  spices  0.856775    1.663586

Слова (50) и два столбца с цифрами, соответствующими каждому из них, обозначающему количество слов.Как мне сделать кластеризованную диаграмму, чтобы показать сравнение двух цифр для каждого слова?Я пробовал практически каждый фрагмент кода, который предлагался другим людям на этом сайте, я просто не понимаю, как сгруппировать два столбца «Процент».

Ответы [ 3 ]

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

попробуйте это,

df.set_index('Word').plot(kind='bar')

O / P

enter image description here

Если вы не хотите выполнять диаграмму для всехстолбцы значений в df используют это.Просто установка индекса действует как X, а остальные столбцы действуют как y

Ввод:

     Word  Percentage1  Percentage2  Percentage3  Percentage4
0   drink    18.166654    29.014272     7.105845    29.014272
1  cherry    13.498262    12.802642     4.715009    12.802642
2   berry     9.810123     6.775552     6.097997     3.408988
3    plum     7.964429     7.105845    12.802642    19.620618
4   crisp     7.892941     4.715009     6.775552    35.832248

O / P

enter image description here

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

Вы можете выбрать гистограмму с накоплением:

# Given
df = pd.DataFrame({'word':['Alpha', 'Bravo', 'Charlie'],
                  'Percentage 1':[10, 3, 0],
                  'Percentage 2': [5, 6, 4]})

df.set_index('word').plot(kind='barh', stacked=True)

plt

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

Если я вас правильно понимаю, вы можете сделать так:

df.plot(x="Word", y=["Percentage1", "Percentage2"], kind="bar")

enter image description here

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