📜  Matplotlib-饼图

📅  最后修改于: 2020-11-08 07:28:02             🧑  作者: Mango


饼图只能显示一系列数据。饼图以一个数据序列显示项目的大小(称为楔形),与项目的总和成比例。饼图中的数据点显示为整个饼的百分比。

Matplotlib API具有pie()函数,该函数生成表示数组中数据的饼图。每个楔形的分数面积由x / sum(x)给出。如果sum(x)<1,则x的值将直接给出小数面积,并且该数组将不被标准化。结果饼图将具有大小为1的空楔-sum(x)。

如果图形和轴为正方形,或者“轴”纵横比相等,则饼形图看起来最好。

参量

下表列出了饼图的参数-

x array-like. The wedge sizes.
labels list. A sequence of strings providing the labels for each wedge.
Colors A sequence of matplotlibcolorargs through which the pie chart will cycle. If None, will use the colors in the currently active cycle.
Autopct string, used to label the wedges with their numeric value. The label will be placed inside the wedge. The format string will be fmt%pct.

以下代码使用pie()函数显示参加各种计算机语言课程的学生列表的饼图。借助于设置为%1.2f%的autopct参数,比例百分比显示在相应的楔形内部。

from matplotlib import pyplot as plt
import numpy as np
fig = plt.figure()
ax = fig.add_axes([0,0,1,1])
ax.axis('equal')
langs = ['C', 'C++', 'Java', 'Python', 'PHP']
students = [23,17,35,29,12]
ax.pie(students, labels = langs,autopct='%1.2f%%')
plt.show()

饼形图