ggplot2中的分组条形图

时间:2018-08-18 17:58:46

标签: r ggplot2 bar-chart

我想复制此图(组间带有小面) barplot (完成方面) enter image description here 这是我的尝试:

library (ggplot2)
data<- data.frame(
  d = rep(LETTERS[21:26], 10),
  val = rnorm (60),
  c = rep(LETTERS[1:10], each = 6)
)

ggplot(data, aes(c, val)) + 
 geom_bar(stat = 'identity', aes(fill = val), position = "dodge") +
 facet_grid(data[, 1] ~ .)

和图形垂直排列,而不是躲避位置。我该怎么办?

谢谢你。

1 个答案:

答案 0 :(得分:1)

我认为您不需要facet_grid(),只需填写'd'

ggplot(data, aes(c, val)) +
  geom_bar(stat = 'identity', aes(fill = d), position = "dodge")

enter image description here


根据OP的评论,我们也可以使用facet_grid(cols = vars(d))

ggplot(data, aes(c, val)) + 
  geom_bar(stat = 'identity', aes(fill = val), position = "dodge") +
  facet_grid(cols = vars(d)) # or facet_grid(. ~ d)

enter image description here