这个问题来自另一个one。我无法在那里执行答案。
定义:
df2 <- data.frame(variable=rep(c("vnu.shr","vph.shr"),each=10),
value=seq(1:20))
情节:
require(ggplot2)
qplot(variable,value, data=df2,geom="boxplot")+
geom_jitter(position=position_jitter(w=0.1,h=0.1))
我想按相反的顺序绘制箱形图(例如,左图中右一,依此类推)。
我尝试了各种方法来使用
levels
,ordered
,relevel
,rev
等对因子进行重新排序,但是我似乎根本无法正确理解语法。 最佳答案
您是否尝试过:
df2$variable <- factor(df2$variable,
levels = c('vph.shr','vnu.shr'),ordered = TRUE)
我刚刚在这里选择了一个排序,因为我的系统配置与我怀疑的系统略有不同,所以我的“默认排序”可能会有所不同。但是,您可以在指定级别时切换级别的位置。
其他一些选项,取决于您的口味:
对于仅反转当前顺序:
factor(df2$variable,levels = rev(levels(df2$variable)),ordered = TRUE)
或者,如果您不想手动输入每个级别,也可以使用子集来指定特定的顺序:
factor(df2$variable,levels = levels(df2$variable)[1:2],ordered = TRUE)
关于r - 使用ggplot2时如何更改框线图的顺序?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6867393/