Python Pandas DataFrame plot.pie() Function:
A pie chart (sometimes known as a circle chart) is a circular statistical visual that is divided into slices to show numerical proportion. The area of each slice in a pie chart is proportionate to the quantity it represents.
A pie plot is created using the DataFrame.plot.pie() function. For the given column, this function wraps matplotlib.pyplot.pie(). If no column reference is provided and subplots=True, a pie plot is generated for each numerical column independently.
Syntax:
DataFrame.plot.pie(y=None)
Parameters
y: This is optional. It indicates the label or position of the column to be plotted. If it is not provided, the subplots=True parameter must be used.
Return Value:
matplotlib.axes.Axes or an ndarray containing one matplotlib.axes.Axes per column when subplots=True is returned by the DataFrame.plot.pie() function.
- Python Pandas DataFrame plot.bar() Function
- Python Pandas DataFrame plot.line() Function
- Python Pandas DataFrame plot.barh() Function
Pandas DataFrame plot.pie() Function in Python
Example1
Approach:
- Import pandas module using the import keyword.
- Import pyplot function of the matplotlib module using the import keyword.
- Pass some random key-value pair(dictionary), index list as arguments to the DataFrame() function of the pandas module to create a dataframe.
- Store it in a variable.
- Print the given dataframe.
- Plot the pie chart of the secondyear_marks of the students of the given dataframe using the dataframe.plot.pie() function.
- Display the plot using the show() function of the matplotlib module.
-
The Exit of the Program.
Below is the implementation:
# Import pandas module using the import keyword. import pandas as pd # Import pyplot function of the matplotlib module using the import keyword. import matplotlib.pyplot as plt # Pass some random key-value pair(dictionary), index list as arguments to the # DataFrame() function of the pandas module to create a dataframe # Store it in a variable. data_frme = pd.DataFrame({ "firstyear_marks": [71, 60, 35, 85], "secondyear_marks": [80, 40, 25, 90]}, index= ["virat", "nick" , "jessy", "sindhu"] ) # Print the given dataframe print("The given Dataframe:") print(data_frme) print() # Plot the pie chart of the secondyear_marks of the students of the # given dataframe using the dataframe.plot.pie() function data_frme.plot.pie(y='secondyear_marks') # Display the plot using the show() function of the matplotlib module plt.show()
Output:
Example2
When no column reference is given and the subplots=True parameter is utilised, a pie plot is generated for each numerical column separately.
Approach:
- Import pandas module using the import keyword.
- Import pyplot function of the matplotlib module using the import keyword.
- Pass some random key-value pair(dictionary), index list as arguments to the DataFrame() function of the pandas module to create a dataframe.
- Store it in a variable.
- Print the given dataframe.
- Plot the pie chart of all the numerical columns of the given dataframe using the dataframe.plot.pie() function by passing subplots=True to it and adjust the size of the plot using the figsize() argument.
- Here it plots both the firstyear_marks, secondyear_marks columns.
- The Exit of the Program.
Below is the implementation:
# Import pandas module using the import keyword. import pandas as pd # Import pyplot function of the matplotlib module using the import keyword. import matplotlib.pyplot as plt # Pass some random key-value pair(dictionary), index list as arguments to the # DataFrame() function of the pandas module to create a dataframe # Store it in a variable. data_frme = pd.DataFrame({ "firstyear_marks": [71, 60, 35, 85], "secondyear_marks": [80, 40, 25, 90]}, index= ["virat", "nick" , "jessy", "sindhu"] ) # Print the given dataframe print("The given Dataframe:") print(data_frme) print() # Plot the pie chart of all the numerical columns of the given dataframe # using the dataframe.plot.pie() function by passing subplots=True to it # and adjust the size of the plot using the figsize() argument. # Here it plots both the firstyear_marks, secondyear_marks columns data_frme.plot.pie(subplots=True, figsize=(12, 8)) # Display the plot using the show() function of the matplotlib module plt.show()
Output: