【问题标题】:Plot stacked bar from dataframe从数据框中绘制堆积条形图
【发布时间】:2018-09-18 13:00:43
【问题描述】:

我有一个如下的熊猫数据框

x   score   freq

T   49.0    2000000
T   49.0    2000000
T   49.0    2000000
T   49.0    1824000
T   49.0    856200
F   49.0    800000
F   49.0    746900
F   49.25   4060900
F   49.25   1450000
T   49.25   1000000
T   49.25   1000000
F   49.25   1000000
F   49.5    2748900
F   49.5    2000000
T   49.5    2000000
F   49.5    1834400

我打算在这里做的是对具有相同'x'和'score'值的行求和,然后绘制一个堆积条,每列代表一个唯一的'score',堆栈为'T'和' F' 表示特定分数。

到目前为止,我已经将它们分组为

y = x.groupby(['x','score']).sum()

但我没有足够的可视化经验来进一步进行。任何帮助将不胜感激。谢谢!

【问题讨论】:

    标签: python-3.x pandas matplotlib


    【解决方案1】:
    df.groupby(['x', 'score']).sum().unstack().plot(kind='bar', stacked=True)
    

    【讨论】:

    • 你比我快,除了我相信主题启动器想要按频率排列列和按 x 排列,所以更正你的答案:df.groupby(['score', 'x']) .sum().unstack().plot(kind='bar',stacked=True)
    • 感谢您的解决方案!为了进一步解决我的问题,是否可以在图表本身中显示频率值以及计数?
    • 我会将有关价值观的问题作为一个单独的问题发布
    • 是否可以交换轴以使“分数”位于 y 轴上?
    猜你喜欢
    • 2018-09-28
    • 2012-09-17
    • 2021-12-27
    • 2016-05-24
    • 1970-01-01
    相关资源
    最近更新 更多