奥特曼打小白
2020-03-23 18:40
采纳率: 0%
浏览 2.3k

Python根据excel数据,统计某一列每个数据出现次数,并根据出现次数的比例画饼图,多一条线去不掉,不知道哪里来的(新手)

#统计数据画饼图
plt.sca(ax_industryRate)
industries = ct_excel.industryName
# dic=ct_excel['industryName'].value_counts() #获得个数之后怎么画饼图?
dic = {} # 采用数据字典统计企业所处行业情况
for item in industries:
if item in dic.keys():
dic[item]+=1
else:
dic[item]=1
a=[]
b=[]
c=0
for key in dic:
if dic[key] >= 3: #3家以下企业的行业都算作其他
a.append(key)
b.append(dic[key])
else:
c += dic[key]
a.append("其他")
b.append(c)
size=[]
t=sum(b)
label = a
for u in b:
i=u/t
size.append(i)
plt.plot(size)
plt.pie(size,labels=label,autopct='%1.lf%%')

plt.show()

从网上搜到的一个比较麻烦的办法,先统计industryName每种出现了几次
出现次数小于三次的都算作其他
然后画饼图,但出来的结果很奇怪,莫名其妙多一条线
![实际结果](https://img-ask.csdn.net/upload/202003/23/1584959879_149708.png)
求大神指导下怎么去掉这条线?

网上还看到一个value_counts()方法,结果是能拿到的,每个种类出现的次数,
但后面如何合并出现频率低的种类,如何画饼图,没有找到资料。
希望有人不吝赐教
  • 写回答
  • 好问题 提建议
  • 关注问题
  • 收藏
  • 邀请回答

1条回答 默认 最新

相关推荐 更多相似问题