可以使用 pie() 函数来画饼图。下面是最简单的饼图,表示 4 个城市的高技术产值。
import matplotlib.pyplot as plt
lbs = ["Beijing", "Shanghai", "Guangzhou", "Shenzhen"] # 标签
vals = [50, 20, 10, 20]
plt.pie(vals, labels=lbs)
plt.savefig("piedemo1.png")
运行该脚本,得到的输出图片如图 1 所示。
也可以使用 explode 参数表示某个单元是否被切出来,以及切出来的长度。例如希望上海和广州被切出来,那么可以使用下面的代码:
import matplotlib.pyplot as plt
lbs = ["Beijing", "Shanghai", "Guangzhou", "shenzhen"] # 标签
vals = [50, 20, 10, 20]
# 0表示不切出来,否则表示切出来,值越大切出的距离越大
explode = (0, 0.1, 0.2, 0)
plt.pie(vals, explode=explode, labels=lbs)
plt.savefig("piedemo2.png")
运行该脚本,输出的图片如图 2 所示。
也可以用 colors 参数来表示各个块的颜色,这也是一个字符串的列表,如下面的代码所示:
import matplotlib.pyplot as plt
lbs = ["Beijing", "Shanghai", "Guangzhou", "shenzhen"]
vals = [50, 20, 10, 20] # 值的列表
explode = (0, 0.1, 0.2, 0) # 切出的长度
color_list =['red', 'blue', 'yellow', 'gray'] # 颜色列表
plt.pie(vals, explode=explode, colors=color_list, labels=lbs) # 饼图
plt.savefig("piedemo3.png") # 保存到png文件中
运行该脚本,得到的图片文件如图 3 所示。