我正在绘制一个有很多箱子(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
和color
用于其他密度曲线)。
谢谢!
添加强制条重叠的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()