# Matplotlib - Pie Chart

A pie chart (or a circle chart) is a circular statistical graphic, which is divided into slices to illustrate numerical proportion. In a pie chart, the area of each slice is proportional to the quantity it represents.

The matplotlib.pyplot.pie() function makes a pie chart of array x. The fractional area of each wedge is given by x/sum(x). If sum(x) < 1, then the values of x give the fractional area directly and the array will not be normalized. The resulting pie will have an empty wedge of size 1 - sum(x).

The wedges are plotted counterclockwise, by default starting from the x-axis.

The pie chart looks best if the figure and Axes are square, or the Axes aspect is equal.

### Syntax

```matplotlib.pyplot.pie(x, labels=None, colors=None,
```

### Parameters

 `x` `Required. `Specify 1D array-like. The wedge sizes. `labels` `Optional. `Specify a sequence of strings providing the labels for each wedge. Default is None. `color` `Optional. `Specify a sequence of colors through which the pie chart will cycle. If None, will use the colors in the currently active cycle. `autopct` `Optional. `If not None, it is a string or function used to label the wedges with their numeric value. The label will be placed inside the wedge. If it is a format string, the label will be fmt % pct. If it is a function, it will be called. `radius` `Optional. `Specify the radius of the pie. Default is 1. `shadow` `Optional. `If True, draws a shadow beneath the pie.

### Example: pie chart

In the example below, the pie() function is used to create a pie chart of the given dataset.

```import matplotlib.pyplot as plt
import numpy as np

#creating dataset
students = [50, 40, 90, 30, 60, 50]
#creating labels
langs = ["Java", "C#", "Python", "PHP", "C++", "C"]

#drawing pie chart
plt.pie(students, labels=langs)
#To ensure axes aspect is equal
plt.axis("equal")

plt.show()
```

The output of the above code will be:

### Example: displaying percentage inside wedge

By using autopct parameter, percentage is displayed inside the respective wedge as shown in the example.

```import matplotlib.pyplot as plt
import numpy as np

#creating dataset
students = [50, 40, 90, 30, 60, 50]
#creating labels
langs = ["Java", "C#", "Python", "PHP", "C++", "C"]

fig, ax = plt.subplots()
ax.set_title("Pie Chart")

#drawing pie chart
ax.pie(students, labels=langs, autopct='%1.1f%%')
#To ensure axes aspect is equal
ax.set_aspect("equal")

plt.show()
```

The output of the above code will be:

### Example: adding legends

To add legends to the figure, the legend() function can be used.

```import matplotlib.pyplot as plt
import numpy as np

#creating dataset
students = [50, 40, 90, 60, 50]
#creating labels
langs = ["Java", "C#", "Python", "C++", "C"]

fig, ax = plt.subplots()
ax.set_title("Pie Chart")

#drawing pie chart
ax.pie(students, autopct='%1.1f%%')
#To ensure axes aspect is equal
ax.set_aspect("equal")