
Table of Contents
简介 Link to 简介
饼图(Pie Chart),用扇形的面积,也就是圆心角的度数来表示数量。
饼图能够十分直观地展示出每个部分数据的占比,各部分比例总量必须是100%。
安装 Matplotlib Link to 安装 Matplotlib
打开 CMD, 输入(前提是要安装 Python):
CMD
1
pip install matplotlib
如果下载较慢,建议使用国内镜像:
CMD
1
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple matplotlib
开始绘制 Link to 开始绘制
在 Matplotlib 中,绘制折线图的函数如下:
PYTHON
1
plt.pie(x, explode=None, labels=None, colors=None, autopct=None, pctdistance=0.6, shadow=False, labeldistance=1.1, startangle=None, radius=None, counterclock=True, wedgeprops=None, textprops=None, center=(0, 0), frame=False)
简单饼图 Link to 简单饼图
直接上代码~ (结合注释食用!)
注:本文使用的数据为七大洲面积。
PYTHON
1234
from matplotlib import pyplot as plt # 导入 matplotlib
value = [4400, 3000, 2400, 1800, 1400, 1000, 900] # 数据
plt.pie(value) # 绘图
plt.show() # 显示
添加标签 Link to 添加标签
参数:labels
,值为一个和数据一一对应的列表。
PYTHON
123456
from matplotlib import pyplot as plt
plt.rcParams['font.family'] = 'Microsoft YaHei' # 显示中文
value = [4400, 3000, 2400, 1800, 1400, 1000, 900]
name = ["亚洲", "非洲", "北美洲", "南美洲", "南极洲", "欧洲", "大洋洲"] # 名称
plt.pie(value, labels=name)
plt.show()
添加百分比 Link to 添加百分比
参数:autopct
,值为一个格式化字符串(如 %1.1f%%
)。
PYTHON
1234
from matplotlib import pyplot as plt
value = [4400, 3000, 2400, 1800, 1400, 1000, 900]
plt.pie(value, labels=name, autopct="%1.1f%%")
plt.show()
修改显示方式 Link to 修改显示方式
- 显示方向:
counterclock
- 初始角度:
startangle
PYTHON
1234
from matplotlib import pyplot as plt
value = [4400, 3000, 2400, 1800, 1400, 1000, 900]
plt.pie(value, counterclock=False, startangle=90)
plt.show()
突出扇形 Link to 突出扇形
参数:explode
,值为一个和数据一一对应的列表,0 为不突出。
PYTHON
1234
from matplotlib import pyplot as plt
value = [4400, 3000, 2400, 1800, 1400, 1000, 900]
plt.pie(value, explode=[0.1, 0, 0, 0, 0, 0, 0])
plt.show()
设置标题 Link to 设置标题
plt.title()
PYTHON
12345
from matplotlib import pyplot as plt
value = [4400, 3000, 2400, 1800, 1400, 1000, 900]
plt.pie(value)
plt.title()
plt.show()
修改颜色 Link to 修改颜色
参数:colors
,值为一个与数据一一对应的列表。
PYTHON
1234
from matplotlib import pyplot as plt
value = [4400, 3000, 2400, 1800, 1400, 1000, 900]
plt.pie(value, colors=['r', 'g', 'b', 'y', 'grey', 'lightblue', 'c'])
plt.show()
实践:绘制七大洲面积比例图 Link to 实践:绘制七大洲面积比例图
综合使用上述参数,绝对不难:
PYTHON
1234567
from matplotlib import pyplot as plt
plt.rcParams['font.family'] = 'Microsoft YaHei' # 显示中文
value = [4400, 3000, 2400, 1800, 1400, 1000, 900]
name = ["亚洲", "非洲", "北美洲", "南美洲", "南极洲", "欧洲", "大洋洲"]
plt.pie(value, labels=name, autopct='%1.1f%%', startangle=90, counterclock=False, explode=[0.1, 0, 0, 0, 0, 0, 0])
plt.title('七大洲面积占比')
plt.show()
本文就到这里啦,拜~ ( •̀ ω •́ )✧
Thanks for reading!