问题描述
以下代码生成重叠的直方图。如何修改此代码以使直方图堆叠在一起?
library(tidyverse)
library(ggridges)
iris %>%
pivot_longer(cols = -Species,names_to = "Param",values_to = "Value") %>%
ggplot(aes(x = Value,y = Param))+
geom_density_ridges(aes(fill = Species),stat = "binline",alpha = 0.5)
我可以使用 geom_histogram
和 facet_wrap
达到预期效果,如下所示,但从美学角度来看,我更喜欢使用 ggridges
的解决方案。
iris %>%
pivot_longer(cols = -Species,values_to = "Value") %>%
ggplot(aes(x = Value))+
geom_histogram(aes(fill = Species),position = position_stack(),alpha = 0.5) +
facet_wrap(~Param,ncol = 1,scales = "free_y")
解决方法
如果您将 scale = 1
添加到 geom_density_ridges
调用中,那么这些情节将只是接触(请参阅 here)。您还可以将比例值设置为小于 1 以增加分离度。