ggplot2 重叠导致 ridgeplot 问题

ggplot2 overlapping causing issues with ridgeplot

我正在从 Seurat 包中创建脊线图。这个包使用 ggplot2。除了一个,我所有的山脊图看起来都很棒。我试图手动调整带宽以使该图看起来与其他图相似,但我最终得到了两个相互重叠的山脊图。

我无法 post 数据示例,因为数据是 Seurat 对象而不是标准 df。提前致歉!

RidgePlot(object = sc1, features = "FGF2+Heparin") 产生:

当我尝试使用 + geom_density_ridges(scale = 2) 更改带宽时,我得到:

我想让它看起来更像这样:

感谢您的帮助!

编辑 02/23/22

我已经取得了很好的进步,但我仍然 运行 遇到问题。理想情况下,ggplot2 会完全覆盖之前的点。


   RidgePlot(sc1, features = "FGF2+Heparin") + geom_density_ridges2(scale = 4, bandwidth = 2) + theme(legend.position = "none") +  xlab("Concentration [AU]") + ylab("Cluster")  +
     scale_fill_manual(
       values = c("#FF3500A0", "#CC9933FF", "#33C04CCF", "#39CCCAAF", "#0000FFA0", "#FF88EEE9")
     )

我通过更改带宽大小和绘图颜色间接解决了我遇到的问题。

我将一些颜色设为半透明,以便您可以看到它们后面的山峰。示例:

此代码适用于单个地块。 p12 <- RidgePlot(sc1, features = "Y-27632") + geom_density_ridges2(scale = 4, bandwidth = 2.05) + theme(legend.position = "none") + xlab("Concentration [uM]") + ylab("Cluster") + scale_fill_manual( values = c("#FF3500A0", "#CC9933FF", "#33C04CCF", "#66CCFF", "#0000FF", "#FF66CC") )