【问题标题】:Cannot make stacked barplot in ggplot2无法在ggplot2中制作堆叠条形图
【发布时间】:2014-05-16 20:30:34
【问题描述】:

我正在尝试在 ggplot2 中制作堆积条形图,但我没有做对。这是制作barplot的代码。

ggplot(chr_all_m, aes(chr, value, fill=factor(Genome))) + 
  stat_summary(fun.y = "mean", geom="bar", position=position_dodge(0.95)) + 
  labs(x="chromosome", y="kaks") 

这是我用这段代码取回的情节。如您所见,它没有堆叠,我认为堆叠是 ggplot2 包中大多数区域图的默认行为。我错过了什么吗?

我什至尝试删除position=position_dodge(0.95) 选项,但我得到的数字不正确。显然我在这里做错了什么......

谢谢!

【问题讨论】:

  • 通过包含position=position_dodge(0.95),您已经明确告诉ggplot 躲避,而不是堆叠。请参阅documentation
  • @joran,请在我的原始帖子中查看我上面的编辑..
  • 请重新阅读我的评论并花一些时间检查文档,在本例中为?stat_summary,它清楚地表明默认位置是“身份”。
  • 对不起,我在这里遗漏了一些东西......我试过position="identity",但我得到了与上面相同的情节(第二个情节)。但不幸的是,堆叠不正确。如您所见,A01 有三个侧边栏,但在堆叠的一侧只有一个。
  • 转到我链接到的文档页面。向下滚动到位置部分。你试过闪避和身份,但都没有奏效。还有其他看起来很有希望的吗?

标签: r ggplot2 geom-bar


【解决方案1】:

position="stack"怎么样

dd<-data.frame(
    chr=rep(paste0("A",1:3), 3),
    Genome=rep(c("LF","MF1","MF2"), each=3),
    value=rpois(9,100)
)


ggplot(dd, aes(chr, value, fill=factor(Genome)))+
stat_summary(fun.y = "mean", geom="bar", position="stack")

【讨论】:

  • 你太棒了。感谢您的提示。有效。我怎么在任何地方都找不到position=stack 选项。无论如何谢谢....
猜你喜欢
  • 2019-02-01
  • 1970-01-01
  • 1970-01-01
  • 2018-09-30
  • 1970-01-01
  • 1970-01-01
  • 2014-12-28
  • 2014-12-08
  • 1970-01-01
相关资源
最近更新 更多