52ky 发表于 2022-5-4 15:12:57

更改ggplot几何条上填充变量的顺序

问题
我有一个条形图,我在其中更改了样本“BB”的顺序。 “一个一个”。它们由条件位置填充。

如何更改此图例的可变填充顺序,以使条形显示为华盛顿蒙古埃及? (即:右边黑柱(埃及),蒙古,左边白柱(华盛顿))。
sample <- c("AA", "AA", "AA", "BB", "BB", "BB")
location<- c("Washington", "Mongolia", "Egypt", "Washington", "Mongolia", "Egypt" )
value <- c(0.03, 0.06, 0.02, 0.0051, 0.0082, 0.003)
data <- data.frame(sample, location, value)


ggplot(data, aes(fill=location, y=value, x=sample)) +
    geom_bar(position="dodge", stat="identity", color="black")+
theme_classic()+
scale_fill_grey() +
scale_x_discrete(limits=c("BB", "AA"))
回答
您可以将 position_dodge2 与参数 reverse = TRUE 一起使用:
library(ggplot2)

ggplot(data, aes(fill=location, y=value, x=sample)) +
geom_bar(position = position_dodge2(reverse = TRUE), stat="identity", color="black")+
theme_classic()+
scale_fill_grey() +
scale_x_discrete(limits=c("BB", "AA"))+
guides(fill = guide_legend(reverse = TRUE))



页: [1]
查看完整版本: 更改ggplot几何条上填充变量的顺序