是否可以删除多个箱中直方图中的空间?

问题描述 投票:0回答:1

我正在绘制一个有很多箱子(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))

enter image description here

正如你所看到的,它在我的栏之间添加了不需要的间距(我想要一个无缝渐变)。有没有办法删除这些空格?作为参考,我知道使用geom_segment来实现这些结果的方法,所以现在我只对修复直方图问题感兴趣(如果可能的话)。在color=y中设置aes可以工作但是我在这里的更大目标是一个hacky代码,它让我基本上用两个完全独立的渐变图形化两条密度曲线(因此我需要保存我的geom_segmentcolor用于其他密度曲线)。

谢谢!

r ggplot2 histogram
1个回答
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()

enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.