Python使用matplotlib绘制饼图时如何在图表旁显示元素总和
你可以通过matplotlib的text()方法在画布指定位置添加自定义文本,直接放在饼图旁展示总人数,修改后的完整可运行代码如下:
import matplotlib.pyplot as plt Count_of_people = [66,100,637,160,14718] Who=["Servant", "Officer", "Teacher","Assistant","Student"] plt.axis("equal") plt.pie(Count_of_people,labels=Who, shadow=True, autopct='%1.1f%%',radius=1.5,explode=[0.01,0,0,0.001,0.01]) Sum = sum(Count_of_people) # 在饼图右侧添加总人数文本 plt.text(2.2, 0, f'Sum of people in School= {Sum}', fontsize=12, bbox=dict(facecolor='white', alpha=0.8)) plt.show()
参数说明:
text()的前两个参数分别为文本的x、y坐标,你可以根据自己想要的摆放位置调整数值:因为你设置了饼图半径为1.5,所以x设为大于1.5的数值就会显示在饼图右侧,y设为0代表和饼图中心水平对齐- 第三个参数为展示的文本内容,使用f-string自动拼接计算得到的总人数,无需手动填写固定值
- 附加的
bbox参数可以给文本添加半透明白底背景,避免和饼图元素重叠看不清,不需要可以删掉
内容的提问来源于stack exchange,提问作者user16726326
相关产品推荐
相关产品推荐

