Как обозначить круговую диаграмму? - PullRequest
0 голосов
/ 31 октября 2018

Мой набор данных stud_alcoh приведен ниже

school  sex     age     address     famsize     Pstatus     Medu    Fedu    Mjob    Fjob    reason  guardian    legal_drinker
0   GP  F   18  U   GT3     A   4   4   AT_HOME     TEACHER     course  mother  True
1   GP  F   17  U   GT3     T   1   1   AT_HOME     OTHER   course  father  False
2   GP  F   15  U   LE3     T   1   1   AT_HOME     OTHER   other   mother  False
3   GP  F   15  U   GT3     T   4   2   HEALTH  SERVICES    home    mother  False
4   GP  F   16  U   GT3     T   3   3   OTHER   OTHER   home    father  False

number_of_drinkers = stud_alcoh.groupby('legal_drinker').size()
number_of_drinkers

legal_drinker
False    284
True     111
dtype: int64

Мне нужно нарисовать круговую диаграмму с number_of_drinkers с True как 111 и False 284. Я написал number_of_drinkers.plot(kind='pie') какая метка Y, а также номер (284 и 111) не помечены

Ответы [ 2 ]

0 голосов
/ 31 октября 2018

На ваш вопрос уже есть хороший ответ. Вы также можете попробовать это. Я использую фрейм данных, которым вы поделились.

import pandas as pd

df = pd.read_clipboard()
df

school  sex age address famsize Pstatus Medu    Fedu    Mjob    Fjob    reason  guardian    legal_drinker
0   GP  F   18  U   GT3 A   4   4   AT_HOME TEACHER course  mother  True
1   GP  F   17  U   GT3 T   1   1   AT_HOME OTHER   course  father  False
2   GP  F   15  U   LE3 T   1   1   AT_HOME OTHER   other   mother  False
3   GP  F   15  U   GT3 T   4   2   HEALTH  SERVICES    home    mother  False
4   GP  F   16  U   GT3 T   3   3   OTHER   OTHER   home    father  False

number_of_drinkers = df.groupby('legal_drinker').size() # Series
number_of_drinkers

legal_drinker
False    4
True     1
dtype: int64

number_of_drinkers.plot.pie(label='counts', autopct='%1.1f%%') # Label the wedges with their numeric value

enter image description here

0 голосов
/ 31 октября 2018

Это должно работать:

number_of_drinkers.plot(kind = 'pie', label = 'my label', autopct = '%.2f%%')

Аргумент autopct дает вам обозначение в процентах внутри графика, с нужным количеством десятичных знаков, указываемых непосредственно перед буквой "f". Так что вы можете изменить это, например, на% .1f %% только для одного десятичного знака. Лично я не знаю, как показать необработанные цифры внутри, а только процент, но, насколько я понимаю, это цель пирога.

...