python - Matplotlib 条形图,显示男性和女性的 x 值
问题描述
我想尝试按性别分析婚姻状况的分布,我觉得条形图是最好的方法。我可以弄清楚如何获得每种婚姻状况的人数,但无法弄清楚如何将每种状态的男性和女性结果分开。我已经看过很多关于 matplotlib 中使用 pandas 的条形图的教程,但我似乎无法理解。
数据框:
数值为人数的系列结构:
这是我为每个状态的人数绘制的:
series = dfFile["marital_status"].value_counts()
series.plot('bar')
plt.show()
我得到了什么:
我想要得到的是这样的东西,但 x 值作为婚姻状况:
对 Python 和 Matplotlib 来说相当新,所以如果答案是显而易见的,或者问题的措辞不是很好,我会同意。
解决方案
这应该有助于:
gender_column = <ENTER GENDER COLUMN NAME HERE>
dfFile.groupby(["marital_status", gender_column]).size().unstack(level=1).plot(kind='bar')
推荐阅读
- graph-theory - 删除一个顶点后如何有效地查找有向图中的顶点之间是否存在路径?
- mysql - 查询执行期间发生错误时如何在python中自动关闭MySQL连接?
- html - 在单独的文件夹中时,CSS 文件无法正确链接到 html
- python-3.x - ImportError:无法导入名称“deprecated_endpoints”
- powershell - 如何模拟使用不同参数和不同结果调用两次的命令
- kubernetes - 如何使用 fabric8 kubernetes Java 客户端 API 在容器上设置 GPU 资源要求
- r - 如何从这段代码中提取这个数据点?
- ios - 核心数据获取请求错误
- c++ - 返回一个二维数组
- activiti - 如何知道flowable在flow中抛出异常