我想创建一个显示国家/地区值的饼图。我有一个单列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
答案 0 :(得分:17)
您需要做的是在绘制之前计算每个国家/地区出现的次数。试试这个:
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')