R绘图|韦恩图的常见绘制方法

作者: Clariom | 来源:发表于2020-07-18 10:30 被阅读0次

实验设计:对照组,TNF处理组,TGF处理组,IL4处理组,每组3个生物学重复
实验分组:TNF组 vs 对照组;TGF组 vs 对照组;IL4组 vs 对照组
所得数据:三种分组比较下的差异基因
最终需求:直观展示三组差异结果的共同基因及特有基因

以上这类设计和需求是高通量数据后期展示时常见的需求,通常通过绘制韦恩图(Venn图)就可以满足!

如下图左侧,就是典型的韦恩图展示形式,不同的颜色代表不同的来源,它们之间的共有基因或是特有基因数量一目了然,可直观展示出不同来源数据之间的在成分上的异同点。

近几年针对这类需求,又出现了一种更棒的可视化形式,如下图,直观展示7组数据之间的关系,一目了然。

image

今天呢,来简单演示下火山图的绘制方法,有数据的小伙伴可以试试!数据就以TNF组 vs 对照组;TGF组 vs 对照组;IL4组 vs 对照组三组差异基因来做案例。

vennR包绘制韦恩图

首先清除环境,安装并加载所需要的R包

rm(list = ls()) #清除环境内存
install.packages("readxl")  #安装readxl包
install.packages('venn')  #安装venn包
library(readxl)  #加载readxl包
library(venn)

读入数据并对数据做简单处理

读入IFN组差异数据

data<-read_excel("venn.xls",1)    #读入excel数据
IFN<-data$`Gene Symbol`

读入TNF组数据

data<-read_excel("venn.xls",2)    #读入excel数据
TNF<-data$`Gene Symbol

读入IL4组差异数据

data<-read_excel("venn.xls",3)    #读入excel数据
IL4<-data$`Gene Symbol`

将3组数据构建成list

x <- list(IFN=IFN, TNF=TNF, IL4=IL4) # list内元素为元素型,不可以是表达矩阵
# 或者也可以把数据放在一起直接载入为data
# x <- list(IFN=data$IFN, TNF=data$TNF, IL4=data$IL4) # 这样构建数据也可以

用venn包绘图


?venn #查看venn函数的使用方法
venn(x,zcolor='style')  #绘图
image

venn.dragram R包绘制韦恩图

首先清除环境,安装并加载所需要的R包

rm(list = ls()) #清除环境内存
#install.packages("readxl")  #安装readxl包
#install.packages('VennDiagram')
library(readxl)  #加载readxl包
library(VennDiagram)

读入数据并对数据做简单处理

读入3组汇总数据

data<-read_excel("venn.xls",4)    #读入excel数据
data<-as.data.frame(data)    #将data转换为data.frame格式
data[is.na(data)]<- 0  #将NA值替换为0

用venn.diagram绘图

?venn.diagram #查看具体参数和使用方法
venn.plot <-venn.diagram(
  list(IFN = data$IFN,TNF = data$TNF,IL4 = data$IL4),
  filename = "Venn.PDF",
  fill = c("red","blue","green"),
  alpha = 0.5,
  cex = 1,
  lwd=0,
  lty=0,
  fontfamily = "serif",
  fontface = "bold",
  cat.default.pos = "text",
  cat.col = c("red","blue","green"),
  cat.cex = 1.5,
  cat.fontfamily = "serif",
  cat.dist = c(0.2, 0.2, -0.15),
  cat.pos = 0)

UpsetR包绘制韦恩图

首先清除环境,安装并加载所需要的R包

rm(list = ls()) #清除环境内存
install.packages("UpSetR") 
install.packages("readxl")  #安装readxl包
library(readxl)  #加载readxl包
library(UpSetR)

读入数据并对数据做简单处理

读入3组汇总数据

data<-read_excel("venn.xls",4)    #读入excel数据
data<-as.data.frame(data) # 将data转换为data.frame格式
data[is.na(data)]<- 0 #将NA值替换为0
X=list(IFN = data$IFN,TNF = data$TNF,IL4 = data$IL4) #将3组数据汇总成list

用upsetR 绘图

p=upset(fromList(X),nsets = 3, order.by = "freq",
      point.size = 5, 
      line.size = 1.3, 
      mainbar.y.label = "IntersectionSize", 
      sets.x.label = "",
      mb.ratio = c(0.60, 0.40),
      text.scale = c(2, 2, 2, 2,2, 2))
p

更多内容可关注公共号“YJY技能修炼”~~~

往期回顾
R绘图|ggplot2火山图的绘制
R绘图|ggplot2散点图的绘制
R绘图|pheatmap热图绘制——基础篇
R绘图|pheatmap热图绘制——中阶篇
R绘图|pheatmap热图绘制——高阶篇

相关文章

  • R绘图|韦恩图的常见绘制方法

    实验设计:对照组,TNF处理组,TGF处理组,IL4处理组,每组3个生物学重复实验分组:TNF组 vs 对照组;T...

  • <实战>VennDiagram包绘制韦恩图

    加载所需R包 绘制一维韦恩图 绘制二维韦恩图 绘制三维韦恩图 绘制四维韦恩图 绘制五维韦恩图

  • 使用VennDiagram包绘制韦恩图

    使用VennDiagram包绘制韦恩图 加载所需R包 绘制一维韦恩图 绘制二维韦恩图 绘制三维韦恩图 绘制四维韦恩...

  • 韦恩图(Venn)

    分享在线绘制韦恩图网站: 使用R包(VennDiagram)绘制韦恩图 参考链接:https://www.jian...

  • R语言可视化(九):韦恩图绘制

    09.韦恩图绘制 清除当前环境中的变量 设置工作目录 gplots包绘制韦恩图 VennDiagram包绘制韦恩图...

  • R绘制韦恩图

    目前做Venn图的R包中,VennDiagram是常用的包,可以做2元到5元的图。下面介绍一下2元到5元venn图...

  • R绘制韦恩图

    1-交集、并集 https://blog.csdn.net/woodcorpse/article/details/...

  • 韦恩图的绘制-R

    画韦恩图,常见的如下。 常见的R包比如gplots、venneuler、VennDiagram等最多只能画5元。 ...

  • venn图ggVennDiagram

    label = "percent" # 只显示百分比 参考:R语言绘图—Veen(韦恩图) 简书[https://...

  • R语言初级教程(24): 基本绘图

    R擅长绘图,使用R可以绘制各种类型图。今天将以示例的形式来讲解如何绘制一些常见基本图,包括: 线形图 条形图 直方...

网友评论

    本文标题:R绘图|韦恩图的常见绘制方法

    本文链接:https://www.haomeiwen.com/subject/vzsxkktx.html