数据分析后,结果的可视化非常重要,比如GWAS分析后,将显著性位点进行可视化,AT的突变,共有AA、AT、TT三种基因型,比如对应的是体重,那么这三种基因型都有对应的体重,为了形象的展示出那种基因型更高,以及他们之间的显著性,做一个箱线图+显著性检验,无疑是最好的。 1,模拟数据:
library(tidyverse) library(ggpubr) set.seed(123) y1 = rnorm(10) + 5 y2 = rnorm(10) + 15 y3 = rnorm(10) + 35
dd = data.frame(Genotype = rep(c("AA","AT","TT"),each=10),weight = c(y1,y2,y3)) dd
2,直接分组箱线图 可以看到TT的基因型最高,其次是AT,最后是AA,很明显,T是优势基因。 ggboxplot(dd,x = "Genotype", y = "weight", color = "Genotype", add = "jitter")
3,添加显著性检验的结果(ANOVAR方法)
原始的方差分析结果:
mm = aov(weight ~ Genotype , data=dd) summary(mm)
可视化的话,有两种:一种是显示P值,一种是显示星号
p = ggboxplot(dd,x = "Genotype",y = "weight",color = "Genotype",add = "jitter") p + stat_compare_means(method = "anova")
p + stat_compare_means(method = "anova",label = "p.signif")
4,分组两两之间显著性检验 方差分析,只能表明AA、AT、TT三者之间至少有两个之间达到极显著,如果想要检测两两之间的,还需要进行多重比较,这里可以对两两之间进行T检验,然后把结果可视化。
my_comparisons = list( c("AA", "AT"), c("AA", "TT"), c("AT", "TT") ) p + stat_compare_means(comparisons = my_comparisons, # label = "p.signif", method = "t.test")
p + stat_compare_means(comparisons = my_comparisons, label = "p.signif", method = "t.test")
结果如下:
|