分享

ggplot2|ggpubr配对箱线图绘制与配对检验

 TS的美梦 2022-03-25

在日常研究中,我们会碰到配对资料,例如同一病人治疗前后的变化,同一病人癌组织和癌旁组织基因表达,类似于等等都需要配对资料。对于这类数据的展示通常使用配对点图来可视化,这里我们演示配对箱线散点图的绘制。

绘图数据结构包括三列,一列是表达量,一列是分组,还有一列是样本ID。

这里我们用两种方法实现配对的做法,并对数据进行显著性检验。

一、ggplot2---代码有注释

setwd("F:/生物信息学/配对箱线图")df <- read.csv("mybox.csv",header = T)library(ggplot2)library(forcats)df$group <- as.factor(df$group)df$group <- fct_inorder(df$group)
ggplot(df, aes(x = group, y = gene.expression)) + geom_boxplot(aes(fill = group), show.legend = F, width = 0.6) + #箱线图 scale_fill_manual(values = c('#00AFBB', '#E7B800')) + #设置颜色 geom_point(size = 3,color='red') + geom_point(size = 3,shape=21) + #绘制散点 geom_line(aes(group = sample), color = 'gray', lwd = 0.5) + #配对样本间连线 theme(panel.grid = element_blank(), axis.line = element_line(colour = 'black', size = 1), panel.background = element_blank(), plot.title = element_text(size = 15, hjust = 0.5), plot.subtitle = element_text(size = 15, hjust = 0.5), axis.text = element_text(size = 15, color = 'black'), axis.title = element_text(size = 15, color = 'black')) + labs(x = '', y = 'gene.expression', title = 'Cancer vs Control')+ stat_compare_means(method = "t.test",paired = TRUE, comparisons=list(c("cancer", "control")))#配对t检验

二、ggpubr---代码有注释

library(ggpubr)ggpaired(df, x="group", y="gene.expression", fill="group",id = "sample",         add="jitter",line.color = "gray", line.size = 0.5,         palette=c('#00AFBB', '#E7B800'),         xlab=" ",          ylab="gene.expression", title = "Cancer vs Control",         legend.title=" ",show.legend = F) +   stat_compare_means(method = "t.test",paired = TRUE, comparisons=list(c("cancer", "control"))) +#配对t检验  theme(legend.position = 'none')#去掉legend

两种方法得到的结果一样,但是个人认为ggpubr较ggplot2使用方便,因为不用调节太多东西,ggpaired函数就是专门做配对箱线图的!想获取示例数据的可以打赏截图联系作者!

    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约