不好好做图的NSC系列(七):跟着cell学习用散点图展示韦恩图

2022-01-20  本文已影响0人  KS科研分享与服务

好久不见!

今天我们重复和学习这篇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共同上调基因

画散点图:


image.png
ggscatter(df,
          x= 'A_log2FC',
          y= 'B_log2FC',
          color = 'group',
          palette = c("#28A0A3", "#729730","#BD3342","#BBBBBB"),
          size = 2)+ theme_base()
image.gif

这里有个问题需要说明,那就是颜色排序,我们可以看右侧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文章中的效果了。至于其他的添加文字等,需要用软件编辑!

今天这个内容你学会了吗?还不快点赞+关注!!!

上一篇 下一篇

猜你喜欢

热点阅读