ggplot2/ggpubr包:绘制配对箱线图、配对小提琴图和配对点图
创作时间:
作者:
@小白创作中心
ggplot2/ggpubr包:绘制配对箱线图、配对小提琴图和配对点图
引用
CSDN
1.
https://blog.csdn.net/a852232394/article/details/139298801
本文将介绍如何使用R语言ggplot2包和ggpubr包绘制分组/分面配对图的方法。配对图最大的优点在于可以展示相同样本处理前后对应关系。文章将通过具体的数据集,演示如何绘制配对箱线图、配对小提琴图和配对点图。
图1:配对图示例(图片来源:Nat Commun:Clinical practices underlie COVID-19 patient respiratory microbiome composition and its interactions with the host)
数据加载
首先,我们需要加载必要的R包并读取数据。数据信息包括ID(TCGA的barcode)、Group(肿瘤与对照样本)、paired(配对的barcode信息)和Expression(目标基因的表达量)。
rm(list=ls())
pacman::p_load(tidyverse,reshape2,ggpubr)
# 实战
data <- read.csv('data.csv')
head(data)
ggpubr包简单示例
使用ggpubr包绘制配对图的基本示例:
# ggpubr绘图示例
ggpaired(ToothGrowth,
x = "supp",
y = "len",
color = "supp",
line.color = "gray",
line.size = 0.4,
palette = "jco") +
stat_compare_means(paired = TRUE)
图2:ggpubr包绘制的配对图示例
ggpubr包绘制配对箱线图
使用ggpubr包绘制配对箱线图:
ggpaired(data, x = "Group", y = "Expression", color = "black", fill = "Group", line.size = 0.5) +
geom_line(aes(group = paired), color = "grey80") +
stat_compare_means(paired = TRUE, size = 2) +
facet_wrap(~ Type, scales = 'free_x', nrow = 2) +
ggsci::scale_fill_npg() +
ggsci::scale_color_npg() +
theme_classic2(base_size = 9) +
xlab('Expression')
ggsave('pic1.png', width = 10, height = 4)
图3:使用ggpubr包绘制的配对箱线图
ggplot2绘制配对箱线图
使用ggplot2包绘制配对箱线图,并优化分面绘图主题:
facet_theme <- theme(strip.background = element_blank(),
panel.spacing.x = unit(0, "cm"), #x轴分面距离
panel.spacing.y = unit(0, "cm"),#y轴分面距离
strip.text.x = element_text(size=7),
strip.text.y = element_text(size=7, face="bold"),
axis.text.x=element_text(angle=45,vjust=1, hjust=1),
legend.position = 'none')
ggplot(data, aes(x = Group, y = Expression, color = Group)) +
geom_boxplot(outlier.size = 0.5) +
geom_line(aes(group = paired), color = "grey80", size = 0.5) +
geom_point(size = 0.5) +
stat_compare_means(comparisons = list(c("tumor", "normal")),
paired = T, size = 2,label = "p.format",tip.length = 0) +
facet_wrap(~ Type, scales = 'free_y', nrow = 2) +
ggsci::scale_color_npg() +
theme_classic2(base_size = 9) +
facet_theme +
xlab('Expression')
ggsave('pic2.png', width = 10, height = 4)
图4:使用ggplot2包绘制的配对箱线图
配对小提琴图
使用ggplot2包绘制配对小提琴图:
ggplot(data, aes(x = Group, y = Expression, color = Group)) +
geom_violin(size = 1) +
geom_line(aes(group = paired), color = "grey80", size = 0.5) +
geom_point(size = 0.5, color = 'black') +
stat_compare_means(comparisons = list(c("tumor", "normal")),
paired = T, size = 2,label = "p.format",tip.length = 0) +
facet_wrap(~ Type, scales = 'free_y', nrow = 2) +
ggsci::scale_color_npg() +
theme_classic2(base_size = 9) +
facet_theme +
xlab('Expression')
ggsave('pic3.png', width = 10, height = 4)
图5:配对小提琴图
配对点图
使用ggplot2包绘制配对点图:
ggplot(data, aes(x = Group, y = Expression, fill = Group, color = Group)) +
geom_line(aes(group = paired), color = "grey80", size = 0.5) +
geom_point(size = 1) +
stat_compare_means(comparisons = list(c("tumor", "normal")),
paired = T, size = 2,label = "p.signif",tip.length = 0) +
facet_wrap(~ Type, scales = 'free_y', nrow = 2) +
scale_color_manual(values = c('red', 'black')) +
theme_classic2(base_size = 12) +
facet_theme
ggsave('pic4.png', width = 10, height = 4)
图6:配对点图
分组差异展示方式
- ns: p > 0.05
- *: p <= 0.05
- **: p <= 0.01
- ***: p <= 0.001
- ****: p <= 0.0001
热门推荐
沪深300等三大股指期货交割日:每月第三个周五
从速游到深度游:韩国旅游行程全攻略
荣梓杉综艺争议:年轻艺人如何平衡真实与公众期待
脚臭大作战,你准备好了吗?
脚气一直瘙痒?多吃这几物,或对你有所帮助
常见皮肤问题及其原因
智慧养老市场规模破8万亿,“三社联动”开启养老新模式
对联的写作格式参考
盘点龙年特色春联:青铜铭文大小篆,卡通七“哈”笑翻天
高考对联:寄托希望,点燃梦想
“香港·晨”:周润发个展30幅作品将全部义卖
《唐探1900》春节档来袭:周润发领衔,200栋建筑重现百年前旧金山
浪子回头:周润发凭《阿郎的故事》三夺金像奖影帝
周润发新片定档春节,香港电影发力内地市场
小马哥诞生:《英雄本色》开创香港黑帮英雄片先河
谐音+形状+特色:联想法让省级行政区记忆不再难
68岁周润发刷新半马纪录,这位“赌神”仍在奔跑
TVB走出的国际巨星:周润发的全球影坛之路
周润发凭《英雄本色》封影帝,开创香港枪战片新纪元
69岁周润发参加香港马拉松:从银幕传奇到跑道新秀
唐探1900:王宝强刘昊然携手周润发,1:1还原旧金山
周润发因《英雄本色》崛起,开创香港英雄片时代
周润发:用两个经典角色完成从港星到国际影人的蜕变
冠心病有什么症状?日常生活中如何预防冠心病的发生?
IM期货跨期套利:20%年化收益背后的交易逻辑
股指期货交割日临近,这些关键环节要记牢
对联书法艺术的欣赏论文
对联、对偶与对仗:一字之差,怎样使用区分,你都知道吗
交割日效应显现,股市将现五大变化
一字千金,人生修“敬”:12副对联深度解读“敬”字的内涵与价值