我目前有一个seurat对象scData
,我在其中应用了使用AddModuleScore
计分的模块。AddModuleScore(scData, features = inflam, name = "inflam_score", seed = 1, search = FALSE, assay = NULL, nbin = 21, ctrl = 100, pool = NULL)
我已经画了一个小提琴图,通过这样做来看到一个视觉效果:VlnPlot(scData, features = c("inflam_score1"), pt.size = 0) + NoLegend() + theme(axis.text.x = element_text(angle = 90, hjust = 1))
是否有办法将p值添加到输出中?
我试过:VlnPlot(scData, features = c("inflam_score1"), pt.size = 0) + stat_compare_means()
但得到这个错误:Error in stat_compare_means() : could not find function "stat_compare_means"
我试过:VlnPlot(scData, features = c("inflam_score1"), pt.size = 0) + stat_compare_means()
但得到这个错误:Error in stat_compare_means() : could not find function "stat_compare_means"
更新:
我需要加载ggpubr
包以获得p值。
但是,由于我有超过2对,我将如何添加全局p值加上超过2组的p值。[![在此处输入图像描述][1]][1]
我试过:
my_comparisons <- list( c("hIgG2_mIgG2", "NIS793_mIgG2"), c("hIgG2_aIL_1b", "NIS793_aIL_1b"))
VlnPlot(fib_395, features = c("trans_score1"), pt.size = 0) + stat_compare_means(comparisons = my_comparisons) + stat_compare_means()
但我收到了警告,没有显示p值:
Warning: Removed 6 rows containing missing values (geom_signif).
1条答案
按热度按时间szqfcxe21#
更新日期:
您的错误很可能与y轴限制有关。
VlnPlot()
函数为绘图分配了“正确”的空间量,但您想在小提琴上方添加p值,而这些值不“适合"可用空间。如果您通过更改ylim()
来增加可用空间,则它应该按预期工作:最小可重现示例:
重现问题:
更改
ylim()
以解决问题:使用ggsignif包(ggpubr使用“under the hood”)也有同样的结果:
创建于2023年1月13日,使用reprex v2.0.2