【问题标题】:plotting multiple stacked bar chart绘制多个堆积条形图
【发布时间】:2021-10-07 21:40:15
【问题描述】:

我有以下数据框,用于计算每个业务部门中每种性别的经理和非经理人数(它是一个综合指数,对每个业务部门中是否担任经理的男性和女性的价值进行总和)。如您所见,业务部门可能只有非经理或经理作为员工:

                                       Female  Male
Business Unit Professional Category              
South         Non Manager                37    45
West          Non Manager                31    37
East          Manager                    14    15
              Non Manager               342   412
Noth          Manager                     5     5
              Non Manager               457   550
Center        Non Manager                44    53

我想创建一个堆积条形图,其中在 x 轴上我有专业类别(一个条形用于经理,一个单独的条用于非经理),并且在每个条形中,男性和女性的堆积量。但我需要为每个区域重复相同的堆叠条形图:南部、西部、东部、北部、中心。

在 matplotlib/seaborn 中显示这些信息最优雅的方式是什么?

非常感谢您!

【问题讨论】:

    标签: python pandas matplotlib seaborn bar-chart


    【解决方案1】:

    IIUC,试试吧:

    import matplotlib.pyplot as plt
    
    fig, ax = plt.subplots(1, 5, figsize=(20, 8))
    iax = iter(ax.flatten())
    for n, g in df.groupby('Business Unit'):
        g.loc[n, :].plot.bar(ax=next(iax), title=f'{n}', stacked=True)
    

    【讨论】:

    • 是的,这正是我所需要的,谢谢!您是否碰巧知道如何在堆叠栏中显示男性和女性的总数百分比?再次感谢!
    猜你喜欢
    • 2012-09-17
    • 2021-12-27
    • 2016-05-24
    • 2018-06-05
    • 2018-03-10
    • 2018-11-26
    相关资源
    最近更新 更多