用pandas和matplotlib绘制分类数据

2024-04-19 01:34:47 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个包含分类数据的数据框:

     colour  direction
1    red     up
2    blue    up
3    green   down
4    red     left
5    red     right
6    yellow  down
7    blue    down

我想生成一些图表,比如基于类别的饼图和直方图。不创建伪数值变量是否可行?有点像

df.plot(kind='hist')

Tags: 数据right图表分类greenbluered直方图
3条回答

像这样:

df.groupby('colour').size().plot(kind='bar')

从statsmodels中可以找到有用的^{}绘图。它还可以对差异进行统计突出显示。

from statsmodels.graphics.mosaicplot import mosaic
plt.rcParams['font.size'] = 16.0
mosaic(df, ['direction', 'colour']);

enter image description here

但是要小心0号的电池-它们会导致标签问题。

详见this answer

您只需在序列上使用value_counts

df['colour'].value_counts().plot(kind='bar')

enter image description here

相关问题 更多 >