如何从饼图中删除0%?

时间:2018-05-21 13:08:13

标签: python matplotlib pie-chart

我正在处理文本数据以查找情绪分析。我有一个每个句子的情绪评分数据框。使用这些数据我创建了一个饼图,但它在图表中显示了0%。我无法理解这个0%的含义。这是我的数据框df1:

            score
Negative    100.0
Neutral     0.0
Positive    0.0

这是我创建饼图的代码:

import matplotlib.pyplot as plt
import os
plt.figure(figsize=(4,3))
df1.plot(kind='pie', autopct='%1.1f%%', subplots=True,startangle=90,  legend = False, fontsize=14)
plt.axis('off')
plt.show()

这是我的输出图:

如何从我的情节中删除这个0%?

enter image description here

2 个答案:

答案 0 :(得分:1)

我认为您只需过滤数据框即可删除df_to_plot = df1.loc[lambda df: df['score'] == 0] 为零的行。

{{1}}

答案 1 :(得分:0)

对不起,一个非常“实际”的答案。

那你给

df1.plot(kind='pie', autopct='%1.1f%%', subplots=True,startangle=90, legend = False, fontsize=14) 它需要带零的完整df,例如[100,0,0] 您可以过滤df,作为上面的联合国答案,但也可以在autopct中使用lambda函数: df1.plot(kind='pie', autopct=lambda p: '{:.1f}%'.format(round(p)) if p > 0 else '', subplots=True,startangle=90, legend = False, fontsize=14)