You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在ggplot2的geom_col条形图中按参与次数重新排序?

解决ggplot2条形图按参与次数排序的问题

你只需要在aes()里用reorder()函数重新指定Country的排序规则就行,具体用法如下:

  • 升序排列(参与次数从低到高):
    把Country替换成reorder(Country, Participations)——第一个参数是要排序的离散变量(国家),第二个是用来排序的数值变量(参与次数)。

    plt <- ggplot(data) +
            geom_col(aes(Participations, reorder(Country, Participations)), fill = "blue", width = 0.6)
    
  • 降序排列(参与次数从高到低,更符合条形图的常规展示逻辑):
    在参与次数变量前加负号,实现反向排序:

    plt <- ggplot(data) +
            geom_col(aes(Participations, reorder(Country, -Participations)), fill = "blue", width = 0.6)
    

另外注意:你代码里的BLUE需要加引号变成"blue",否则会因未定义变量报错(除非你提前单独定义了这个颜色变量)。

内容的提问来源于stack exchange,提问作者Floyd

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.03 11:46:00