首页 > 解决方案 > 指南中和翻转条形图轴上的因子的阶数

问题描述

您好:有没有办法修改下面的图,使因子“C”显示在顶部?即,我希望(翻转)y 轴上的因子顺序反映图例中显示的它们的顺序。

var1<-sample(c('A', 'B', 'C'), replace=T, size=100)
var2<-sample(c('apples', 'bananas'), replace=T, size=100)
var3<-rnorm(100, mean=100)
df<-data.frame(var1, var2, var3)

df %>% 
  mutate(var1=fct_reorder(var1, var3, mean)) %>% 
  ggplot(., aes(y=var1, x=var3, fill=var1))+facet_wrap(~var2)+geom_col()+scale_fill_grey()

标签: rggplot2forcats

解决方案


您可以使用scale_y_discrete(limits = rev)

library(dplyr)
library(ggplot2)
library(forcats)

df %>% 
mutate(var1=fct_reorder(var1, var3, mean)) %>% 
ggplot(., aes(y=var1, x=var3, fill=var1)) + 
facet_wrap(~var2)+
geom_col()+
scale_fill_grey() +
scale_y_discrete(limits = rev)

在此处输入图像描述


推荐阅读