Pandas中的Groupby数据来标记我的饼图

qlfbtfca  于 2023-05-21  发布在  其他
关注(0)|答案(2)|浏览(191)

我在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数据来标记饼图?
谢谢你。

dohp0rv5

dohp0rv51#

Pandas允许您绘制饼图:

df_0 = df_find_quality_und.groupby("user score").size()
df_0.plot.pie(autopct="%.2f",figsize=(10,10))

输出:

t2a7ltrp

t2a7ltrp2#

标签实际上是groupby sizes对象的索引,因此,您可以尝试:

plot = plt.pie(df_0, labels=df_0.index)

相关问题