我有一个 Pandas 数据框,其中包含多个国家/地区多人的数据。我要做的就是为每个人创建一个堆叠条形图,按国家/地区分隔。
我的数据是什么样的:
person country sector ex_sector
jim US 0.25 0.3333333
tim US 0.3333333 0.2
john US 0.9 0.9
tom US 0.2 0.25
jim UK 0.25 0.3333333
tim UK 0.3333333 0.4
john UK 0.1 0.1
tom UK 0.4 0.25
jim JP 0.5 0.3333333
tim JP 0.3333333 0.4
john JP 0 0
tom JP 0.4 0.5
所以我知道如果我只做一个jimchart = df.loc[df['person'] == 'jim']
我可以得到:
person country sector ex_sector
jim US 0.25 0.3333333
jim UK 0.25 0.3333333
jim JP 0.5 0.3333333
这就是最终目标应该是:
执行此操作的最有效方法是什么?当我尝试只绘制部门列时,它只是在自己的条形图上绘制每个国家,而不是堆叠它们。
从其他文档来看,我似乎必须旋转我的表格,以便每个国家/地区都有自己的列 - 这将使我的表格更宽(我正在使用一个例子,我真正的 df 有 10 个国家/地区)。感谢帮助!
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句