#导入所需库
import matplotlib.pyplot as plt
#标签设置中文
plt.rcParams['font.sans-serif'] = ['SimHei']
plt.rcParams['axes.unicode_minus'] = False
# 绘制饼图
kinds = ['面粉', '全麦粉', '酵母', '苹果酱', '鸡蛋', '黄油', '盐', '白糖'] #标签
weight = [250, 150, 4, 250, 50, 30, 4, 20]
plt.pie(weight, autopct='%3.1f%%')
colors = ['pink', 'pink', 'pink', 'pink', 'pink', 'pink', 'pink', 'pink'] #颜色参数
#调整饼图的位置
plt.subplots_adjust(left=-0.5)
# 添加图例(通过bbox_to_anchor精细调整图例位置)
plt.legend(kinds, loc="upper right", bbox_to_anchor=(2, 0.7), ncol=4)
# 添加表格(通过bbox精细调整表格位置和大小)
#具体参数解析:
#cellText:表格单元格中的数据
#cellLoc:表示单元格文本的对齐方式
#rowLabels:表示行标题的文本
#colLabels:表示列标题的文本
#loc:表示表格与绘图区域的对齐方式
#cellColours:表示单元格的背景颜色
#rowColours:表示行标题所在单元格的背景颜色
#colColours:表示列标题所在单元格的背景颜色
#bbox:精细调整表格的位置和大小
plt.table(cellText=[weight], cellLoc='center', rowLabels=['重量(g)'],
colLabels=kinds,loc='right',cellColours=[colors],rowColours=['red'],colColours=colors,bbox=[1.1, 0.2, 1, 0.3])
plt.show()
绘图结果如下: