我有一个散点图,我需要绘制一个包含所有(或几乎所有)点的轮廓。
我已经成功地将stat_density_2d()
和bins选项设置为2,并将geom_polygon()
做到了这一点。但是,由于必须将bin设置为2,所以我仍然有2个轮廓,一个在多边形的“中心”,另一个在轮廓的“中心”。我只需要外面的那个。
我所拥有的(一个有2个垃圾箱的多边形:一个内部垃圾箱和一个外部垃圾箱):
我需要什么:
在此示例中,内部bin看起来很小,但在更大,更复杂的图中看起来并不专业。
示例:
set.seed(20)
x = rnorm(20, 3)
y = rnorm(20, 4)
points = tibble('x'=rnorm(10, 3), 'y'=rnorm(10, 4))
ggplot2::ggplot(data=points, mapping=aes(x=x, y=y, fill='grey', colour='black')) +
geom_point() +
stat_density_2d(aes(colour='black'), bins=2, geom='polygon') +
scale_fill_identity() + scale_colour_identity() +
geom_vline(xintercept=0, colour = 'black', linetype = 'solid') +
geom_hline(yintercept=0, colour = 'black', linetype = 'solid') +
xlim(-8, 8) + ylim(-8, 8)
类似的问题:
(此包装所基于的包装将不再可用)
ggplot: How to draw contour line for 2d scatter plot to outline the data points
How to plot a contour line showing where 95% of values fall within, in R and in ggplot2