首页 > 解决方案 > 在python中为列表中的所有唯一值绘制饼图

问题描述

我有一种情况,其中包含 100 个值的列表,但只有 3 或 4 个唯一值。例如: test=['abc','abc','bcd','bcd','bcd'] 我想在 python 中绘制饼图,它将自动计算每个唯一值的出现次数并绘制一个饼图图表或任何图表。在此示例中,饼图应显示 abc 占 40%,bcd 占 60%。

标签: python-3.x

解决方案


我使用了来自@thymen 的链接中的建议和代码,并提出了以下代码来使其工作。谢谢

status_d=Counter(test)
print(status_d)

key_list = list(status_d.keys())
val_list = list(status_d.values())

fig1, ax1 = plt.subplots()
ax1.pie(val_list, labels=key_list, autopct='%1.1f%%',
        shadow=True, startangle=90)
ax1.axis('equal')  # Equal aspect ratio ensures that pie is drawn as a circle.

plt.show()

推荐阅读