我在Pandas中使用了groupby,
df_0 = df_find_quality_und.groupby("user score").size()
df_0
得到这个输出;
Output:
user score
3.0 14
7.0 2
7.1 1
7.2 2
7.3 1
7.5 1
7.7 1
7.8 2
7.9 1
8.0 1
8.1 2
8.3 1
8.7 1
dtype: int64
右侧是数据的频率。
然后,我想把这些数据绘制成饼图。但是我不知道如何把左边的数据变成饼图的标签。因此,我手动编写它,就像这样;
user_sc_und = [3.0,7.0,7.1,7.2,7.3,7.5,7.7,7.8,7.9,8.0,8.1,8.3,8.7]
user_sc_und_1 = df_find_quality_und.groupby("user score")
plot = plt.pie(df_0, labels=user_sc_und)
饼图在输出中显示得很好,带有标签。但是,我不想每次都手动写标签。有谁能帮我如何通过在左侧获取groupby数据来标记饼图?
谢谢你。
2条答案
按热度按时间dohp0rv51#
Pandas允许您绘制饼图:
输出:
t2a7ltrp2#
标签实际上是groupby sizes对象的索引,因此,您可以尝试: