Pandas DataFrame Plot - Pie Chart
access_time 2 years ago languageEnglish
more_vert

Pandas DataFrame Plot - Pie Chart

visibility 20,627 comment 0

This article provides examples about plotting pie chart using pandas.DataFrame.plot function.

Prerequisites

The data I'm going to use is the same as the other article Pandas DataFrame Plot - Bar Chart. I'm also using Jupyter Notebook to plot them.

The DataFrame has 9 records:

DATETYPESALES
02020-01-01TypeA1000
12020-01-01TypeB200
22020-01-01TypeC300
32020-02-01TypeA700
42020-02-01TypeB400
52020-02-01TypeC500
62020-03-01TypeA300
72020-03-01TypeB900
82020-03-01TypeC100


Pie chart

df.groupby(['TYPE']).sum().plot(kind='pie', y='SALES')

The above code outputs the following chart:

Shadow effect

df.groupby(['TYPE']).sum().plot(kind='pie', y='SALES', shadow = True)

Start angle

df.groupby(['TYPE']).sum().plot(kind='pie', y='SALES', shadow = True, startangle=90)

Subplots (trellis)

We can also easily implement subplots/trellis charts.

Let's add derive one more column on the existing DataFrame using the following code:

df['COUNT'] = df['SALES'] /100
df

The dataframe now looks like this:

DATETYPESALESCOUNT
02020-01-01TypeA100010.0
12020-01-01TypeB2002.0
22020-01-01TypeC3003.0
32020-02-01TypeA7007.0
42020-02-01TypeB4004.0
52020-02-01TypeC5005.0
62020-03-01TypeA3003.0
72020-03-01TypeB9009.0
82020-03-01TypeC1001.0


Now we can plot the charts using the following code:

df.groupby(['TYPE']).sum().plot(kind='pie', subplots=True, shadow = True,startangle=90,figsize=(15,10))

In the above code, subplots=True parameter is used to plot charts on both SALES and COUNT metrics. The chart size is also increased using figsize parameter.

The chart now looks like the following screenshot:

Add percentage

df.groupby(['TYPE']).sum().plot(kind='pie', subplots=True, shadow = True,startangle=90,
figsize=(15,10), autopct='%1.1f%%')


info Last modified by Raymond 7 months ago copyright This page is subject to Site terms.
Like this article?
Share on

Please log in or register to comment.

account_circle Log in person_add Register

Log in with external accounts

Follow Kontext

Get our latest updates on LinkedIn.

Want to contribute on Kontext to help others?

Learn more

More from Kontext

Spark - Read from BigQuery Table
visibility 255
thumb_up 0
access_time 3 months ago
visibility 137
thumb_up 0
access_time 6 months ago
visibility 2077
thumb_up 0
access_time 2 years ago