在ggplot2直方图中设置间距

10

我需要制作几个关于同一数值向量的直方图和密度估计。因此,下一个绘图很好。

 values = rnorm(100)
 plot = ggplot(data.frame(val=values), aes(x=val)) + geom_histogram(aes(y = ..density..)) + geom_density()

然而,我需要打印几个图表(不是一个具有不同面板的图表)并且具有不同的断点,例如:

breaks = list(c(-1,0,1),c(-2,-1.5,0,1.5,2),c(-0.5,0,0.5))

我该如何重新定义变量plot的断点?

1个回答

7

使用您自己的代码,可以通过以下方式实现:

ggplot(data.frame(val=values), aes(x=val)) + 
  geom_histogram(aes(y = ..density..)) + 
  geom_density() +
  scale_y_continuous(breaks=c(-2,-1.5,0,1.5,2))

如果您只是将“breaks”放在“geom_histogram”内部,也可以工作,但沿着轴的方式肯定更清晰。 - Gregor Thomas
谢谢,我对geom_histogram中的breaks参数感到困惑,并尝试着解决。我刚刚开始使用ggplot2,即使是最简单的事情,我都觉得自己像个白痴。我想我需要花些时间来掌握技巧。 - Usobi
@Usobi ggplot2的一个好参考是在线文档。关于ggplot2的一本好书是Winston Chang的《R Graphics Cookbook》。 - Jaap
啊!我知道有在线文档,但你建议的那本书我不知道,看起来甚至更好。 - Usobi

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接