繁体   English   中英

如何在 Matplotlib 饼图中显示实际值而不是百分比

[英]How to Show the actual value instead of the percent in a Matplotlib Pie Chart

以下代码用于创建一个饼图,该饼图显示每个人从“送货地址名称”列进行的购买次数。 “标签”列表包含每个人的姓名,“购买”列表包含每个人进行的购买次数。

labels = df['Shipping Address Name'].unique()

purchases = df['Shipping Address Name'].value_counts()

plt.pie(purchases, labels=labels, autopct='%.f')
plt.title('Purchases Per Person')
plt.axis('equal')
return plt.show()

这就是“购买”列表基本上的样子:

Lilly   269

Rolf    69

Sandy   11

Dan     2

我试图让购买列表中的值显示在饼图中,而不是“autopct=%.f”中的百分比。 不确定“autopct”function 执行此操作的最简单方法是什么,因此不胜感激。

尝试通过乘以总购买量来重新计算实际值:

purchases = df['Shipping Address Name'].value_counts()

purchases.plot.pie(autopct=lambda x: '{:.0f}'.format(x*purchases.sum()/100) )
# also
# plt.pie(purchases, autopct=lambda x: '{:.0f}'.format(x*purchases.sum()/100))

Output:

在此处输入图像描述

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM