技术篇r语言

VennDiagram-韦恩图绘制

2019-10-15  本文已影响0人  生信筆記

时间:2019年10月15
参考参考

不废话直接画图!!

1、数据准备类型

CK_leaf CS_leaf CK_root CS_root
MSTRG.26    MSTRG.26    MSTRG.26    MSTRG.26
MSTRG.31    MSTRG.31    MSTRG.31    MSTRG.31
MSTRG.53    MSTRG.53    MSTRG.46    MSTRG.53
MSTRG.116   MSTRG.103   MSTRG.53    MSTRG.116
MSTRG.124   MSTRG.116   MSTRG.114   MSTRG.124
MSTRG.167   MSTRG.124   MSTRG.116   MSTRG.152
MSTRG.202   MSTRG.167   MSTRG.124   MSTRG.167
MSTRG.227   MSTRG.172   MSTRG.167   MSTRG.172
MSTRG.266   MSTRG.202   MSTRG.202   MSTRG.184

2、VennDiagram包绘制维恩图

1、一维韦恩图绘制

setwd("I:/FPKM_lncRNA/lncRNA_VennDiagrem")
library("VennDiagram")
#install.packages("VennDiagram")
#清楚环境中的变量
rm(list = ls())
#读取数据
data <- read.csv("VennDiagram.csv", header = T)
head(data)
#绘制一维韦恩图
venn.plot <- venn.diagram(
  x = list(CK_leaf=data$CK_leaf),
  filename = "1single_venn.tiff",
  col = "black", #边框颜色
  lwd = 5, #边框线宽度
  fontface = "bold", #标签字体
  fill = "grey", #填充颜色
  alpha= 0.7, #透明度
  cex = 4, #标签字体大小
  cat.cex =3, #类名字体大小
  cat.fontface = "bold", #类名字体
  margin = 0.04 #边际距离
)

在绘制韦恩图后会在路径文件夹中出现相应的图形和数据,可以忽略,往后走。

2、二维韦恩图绘制

venn.plot <- venn.diagram(
  x = list(
    CK_leaf = data$CK_leaf,
    CK_root = data$CK_root,
  ),
  filename = "2double_Venn.png", imagetype = "png",
  lwd = 3,
  fill = c("cornflowerblue", "darkorchid1"),
  alpha = 0.6,
  label.col = "white",
  cex = 1.5,
  fontfamily = "serif",
  fontface = "bold",
  cat.col = c("cornflowerblue", "darkorchid1"),
  cat.cex = 2,
  cat.fontfamily = "serif",
  cat.fontface = "bold",
  margin = 0.05,
  cat.dist = c(0.03, 0.03),
  cat.pos = c(-20, 20)
)

在此步输入命令后,会有错误提示,并不会直接出图,你问为什么,我也不知道,提示为如下:

Error in list(CK_leaf = data$CK_leaf, CK_root = data$CK_root, ) : 
  argument 3 is empty

在路径文件夹中会有相关的文件输出,此提示不管,直接往下走。

3、三维韦恩图绘制

#绘制三维韦恩图
venn.plot <- venn.diagram(
  x  = list(
    CK_leaf = data$CK_leaf,
    CS_root = data$CS_root,
  ),
  filename = "3triple_Venn.tiff",
  col = "transparent",
  fill = c("red", "blue", "green"),
  alpha = 0.5,
  label.col = c("darkred", "white", "darkblue", "white",
                "white", "white", "darkgreen"),
  cex = 2.5,
  fontfamily = "serif",
  fontface = "bold",
  cat.default.pos = "text",
  cat.col = c("darkred", "darkblue", "darkgreen"),
  cat.cex = 2.5,
  cat.fontfamily = "serif",
  cat.dist = c(0.06, 0.06, 0.03),
  cat.pos = 0
)

4、四维韦恩图绘制

绘制四维韦恩图
venn.plot <- venn.diagram(
  x = list(
    CK_leaf = data$CK_leaf,
    CS_root = data$CS_root,
  
  ),
  filename = "4quadruple_Venn.tiff",
  col = "black",
  lty = "dotted", #边框线型改为"dotted"虚线
  lwd = 3, # 边框线的宽度
  fill = c("cornflowerblue", "green", "yellow", "darkorchid1"),
  alpha = 0.50,
  label.col = c("orange", "white", "darkorchid4", "white", "white", "white",
                "white", "white", "darkblue", "white",
                "white", "white", "white", "darkgreen", "white"),
  cex = 2.0,
  fontfamily = "serif",
  fontface = "bold",
  cat.col = c("darkblue", "darkgreen", "orange", "darkorchid4"),
  cat.cex = 1.8,
  cat.fontface = "bold",
  cat.fontfamily = "serif"
)

:此代码可以绘制六维韦恩图,但是需要在步骤2-3-4维中加入更多的变量信息,主要加入地方:

x = list(
    CK_leaf = data$CK_leaf,
    CS_root = data$CS_root,
    ****** = data$****,
    ****** = data$****,

5、合并图形

venn.plot <- venn.diagram(
  list(CK_leaf=data$CK_leaf,CS_leaf=data$CS_leaf,CK_root=data$CK_root,CS_root=data$CS_root),
  filename = "out5venn.tiff",
  lty = "dotted",
  lwd = 2,
  col = "black",  #"transparent",
  fill = c("dodgerblue", "goldenrod1", "darkorange1", "seagreen3"),
  alpha = 0.60,
  cat.col = c("dodgerblue", "goldenrod1", "darkorange1", "seagreen3"),
  cat.cex = 0.8,
  cat.fontface = "bold",
  margin = 0.07,
  cex = 0.8
)

最后出图,图形在路径文件夹中,但是在每一步绘制过程中,在R中并不显示出来,不知道为什么?


image.png
上一篇 下一篇

猜你喜欢

热点阅读