Search code examples
pythonpandasdatabasegroup-bydata-analysis

Groupby data in Pandas to label my pie chart


I have using groupby in Pandas,

df_0 = df_find_quality_und.groupby("user score").size()
df_0

and get this output;

Output:
user score
3.0    14
7.0     2
7.1     1
7.2     2
7.3     1
7.5     1
7.7     1
7.8     2
7.9     1
8.0     1
8.1     2
8.3     1
8.7     1
dtype: int64

The right side is the frequency of the the data.

Then, I want to plot this data into a pie-chart. But I don't know how to take the left data only to become the labels of my pie-chart. Hence, I write it manually like this;

user_sc_und = [3.0,7.0,7.1,7.2,7.3,7.5,7.7,7.8,7.9,8.0,8.1,8.3,8.7]
user_sc_und_1 = df_find_quality_und.groupby("user score")
plot = plt.pie(df_0, labels=user_sc_und)

The pie-chart was well shown in the output with the label. But, I don't want to write the labels manually every time.. Can anyone help me on how to label the pie-chart by taking the groupby data on the left side?

Thank you.


Solution

  • Pandas allows you to plot pie chart:

    df_0 = df_find_quality_und.groupby("user score").size()
    df_0.plot.pie(autopct="%.2f",figsize=(10,10))
    

    output:

    enter image description here