好久不见!
今天我们重复和学习这篇cell文章的Figure 3D。仔细看图,这个散点图表示的是两种细胞中上调的基因,很明显散点作图用的是基因Log2FC做的。再仔细看看,这个图的另一个意思其实就是韦恩图,A中上调的基因用一个颜色表示,B用一个颜色表示,共有的用另外一种颜色。很有趣的一张图。
首先我们也准备两组细胞的差异基因变化倍数数据,数据纯属虚构!
setwd("E:/生物信息学/韦恩图+散点图")
df <- read.csv("A.csv",header = T)
这个散点图有意思的地方在于不同的点用不同的颜色表示。看过火山图(转录组不求人系列(十): NCS级别的火山图,总有一款适合你!)的小伙伴应该很快就能想到,有一个函数可以实现这个做法,那就是ggscatter。接下来加载包并定义不同的组。
library(ggpubr)
library(ggthemes)
df$group = 'ns'#添加一组
df$group[which(df$A_log2FC>12)]='A'#A上调基因
df$group[which(df$B_log2FC>8)]='B'#B上调基因
df$group[which((df$B_log2FC>8)&(df$A_log2FC>12))]='AB'#AB共同上调基因
画散点图:
ggscatter(df,
x= 'A_log2FC',
y= 'B_log2FC',
color = 'group',
palette = c("#28A0A3", "#729730","#BD3342","#BBBBBB"),
size = 2)+ theme_base()
这里有个问题需要说明,那就是颜色排序,我们可以看右侧group,默认是按照首字母排序的,所以在palette这里颜色可以按照这个排序。
这个图中很显然,不同的点圈起来了。可以通过后期AI修饰手动添加。这里我们回顾下,PCA画图添加过置信椭圆(转录组不求人系列(三):PCA分析及CNS级别作图),试试能不能用这个办法添加。ggscatter函数中有置信椭圆设置,所以是可以的。效果如下。
ggscatter(df,
x= 'A_log2FC',
y= 'B_log2FC',
color = 'group',
palette = c("#28A0A3", "#729730","#BD3342","#BBBBBB"),
size = 2,
ellipse = T,
ellipse.level=0.8,
ellipse.alpha=0)+ theme_base()
这样我们就实现了cell文章中的效果了。至于其他的添加文字等,需要用软件编辑!
今天这个内容你学会了吗?还不快点赞+关注!!!