更新时间:2022年03月16日14时23分 来源:传智教育 浏览次数:
在Python培训课程中,我们经常会遇到添加图例的问题,图例常见于饼图中,主要用于标注饼图中每个扇形代表的含义。2.6.2节的用户A某月支付宝账单报告的饼图将每个扇形的含义标注到圆外,由于标注的文字长短不一且扇形数量偏多,导致图表显得比较杂乱,因此将饼图中全部的标注文字移到图例中,具体代码如下。
# 02_monthly_bills_of_alipay import matplotlib.pyplot as plt plt.rcParams['font.sans-serif'] = ['SimHei'] plt.rcParams['axes.unicode_minus'] = False kinds = ['购物', '人情往来', '餐饮美食', '通信物流', '生活日用', '交通出行', '休闲娱乐', '其他'] money_scale = [800 / 3000, 100 / 3000, 1000 / 3000, 200 / 3000, 300 / 3000, 200 / 3000, 200 / 3000, 200 / 3000] dev_position = [0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1] plt.pie(money_scale, autopct='%3.1f%%', shadow=True, explode=dev_position, startangle=90) # 添加标题 plt.title('支付宝月账单报告') # 添加图例 plt.legend(kinds, loc='upper right', bbox_to_anchor=[1.3, 1.1]) plt.show()
运行程序,效果如图3-8所示。
图3-8 支付宝月账单报告——添加标题、图例
图3-8中,标题位于图表顶部且与图表居中对齐,图例位于图表的右上方。与图2-17相比,图3-8增加了标题和图例,有助于用户明确饼图及其每个颜色的扇形含义。