首页 > 解决方案 > Matplotlib 条形图,显示男性和女性的 x 值

问题描述

我想尝试按性别分析婚姻状况的分布,我觉得条形图是最好的方法。我可以弄清楚如何获得每种婚姻状况的人数,但无法弄清楚如何将每种状态的男性和女性结果分开。我已经看过很多关于 matplotlib 中使用 pandas 的条形图的教程,但我似乎无法理解。

数据框:

在此处输入图像描述

数值为人数的系列结构:

系列

这是我为每个状态的人数绘制的:

series = dfFile["marital_status"].value_counts()

series.plot('bar')
plt.show()

我得到了什么:

显示的图表

我想要得到的是这样的东西,但 x 值作为婚姻状况:

在此处输入图像描述

对 Python 和 Matplotlib 来说相当新,所以如果答案是显而易见的,或者问题的措辞不是很好,我会同意。

标签: pythonpandasnumpymatplotlibbar-chart

解决方案


这应该有助于:

gender_column = <ENTER GENDER COLUMN NAME HERE>
dfFile.groupby(["marital_status", gender_column]).size().unstack(level=1).plot(kind='bar')

推荐阅读