无法在pandas python中制作饼图

3

我想创建一个饼图,显示各国家的数值。我有一个单列csv文件,其中包含用户来自哪些国家的列表,我将其读入pandas数据帧中。 我尝试了各种网络上的饼图教程,但无法绘制此单列数据。

fig = plt.pyplot.figure()
ax = fig.add_subplot(111)
ax.hist(country)

数据示例:

  country
0 BRAZIL
1 INDIA
2 INDIA
3 CHINA
4 RUSSIA
5 BRAZIL

请问您能否发布错误信息并展示一下您的数据是什么样子?另外,您是想绘制直方图还是饼图呢?您说是饼图,但是您的代码却是直方图。 - jmz
嗨raupraha,我只是想尝试一些东西来绘制这些数据。基本上,我想要按国家分类的图表,我猜可以通过饼图和直方图实现。 - user3134370
1个回答

19
你需要做的是在绘制图表之前计算每个国家出现的次数。尝试这样做:
import pandas as pd
import matplotlib.pyplot as plt

#import your data here

#Plot a histogram of frequencies
df.country.value_counts().plot(kind='barh')
plt.title('Number of appearances in dataset')
plt.xlabel('Frequency')

在此输入图片描述

#Now make a pie chart
df.country.value_counts().plot(kind='pie')
plt.axis('equal')
plt.title('Number of appearances in dataset')

输入图像描述


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接