更改堆叠的Geom_Bar的顺序

时间:2019-06-07 03:21:32

标签: r ggplot2

我正在完成一个图形,并希望更改堆叠条形图的两个部分的顺序。

Current Stacked Bar Chart

我已经尝试了文档中提供的forcats :: fct_rev()解决方案以及我的geom_bar参数中的Reverse stacked bar order以及position_fill(reverse = TRUE)。

Simplified code:
plot2<-ggplot(r_4,aes(x=V1,y=V3,fill=V2))+
  coord_flip()+
  geom_bar(stat="identity")
Data:
structure(list(V1 = structure(c(1L, 1L), .Label = "Reagan", class = "factor"), 
    V2 = structure(1:2, .Label = c("Case-Based", "Term-Based"
    ), class = "factor"), V3 = structure(c(2L, 1L), .Label = c("0.36", 
    "0.64"), class = "factor")), .Names = c("V1", "V2", "V3"), row.names = c(NA, 
-2L), class = "data.frame")

我想要左边的小块(“基于术语”),右边的大块(“基于案例”)。

谢谢!

1 个答案:

答案 0 :(得分:1)

修改:更改V3,而不是V2

如akrun所言,更改因子水平,然后它应该起作用:

r_4$V3 <- factor(c("0.36", "0.64"))

plot2<-ggplot(r_4,aes(x=V1,y=V3,fill=V2))+
  coord_flip()+
  geom_bar(stat="identity")