我正在绘制一个有很多箱子(1000+)的直方图。代码如下:
library(tidyverse)
xx=rpois(1000,lambda = 40)
y=density(xx,n=1000,from=0)
ggplot(data.frame(x = y$x, y = y$y), aes(x, y)) +
geom_line() +
geom_histogram(stat='identity',aes(fill=y))
正如您所看到的,它在我的条形图之间添加了不需要的间距(我想要一个无缝渐变)。有没有办法删除这些空格?作为参考,我知道使用geom_segment
来实现这些结果的方法,所以现在我只对修复直方图问题感兴趣(如果可能的话)。在color=y
内设置aes
可行,但我的更大目标是一个hacky代码,它让我基本上用两个完全独立的渐变来绘制两条密度曲线(因此我需要保存geom_segment
和{ {1}}用于其他密度曲线)。
谢谢!
答案 0 :(得分:1)
添加width=
语句(这取决于您的比例)会强制条重叠。它确实给了我一条警告信息position_stack requires non-overlapping x intervals
,但它仍然没有空格。我的下面的例子:
library(tidyverse)
xx=rpois(1000,lambda = 40)
y=density(xx,n=2000,from=0)
ggplot(data.frame(x = y$x, y = y$y), aes(x, y)) +
geom_histogram(stat='identity',color=NA,aes(fill=y),width=0.1) +
geom_line()