R绘制韦恩图 | Venn图

R绘制韦恩图 | Venn图,第1张

R绘制韦恩图 | Venn图

解决方案有好几种:

  • 网页版,无脑绘图,就是麻烦,没有写代码方便
  • 极简版,gplots::venn
  • 文艺版,venneuler,不好安装rJava,参见Y叔
  • 酷炫版,VennDiagram

特别注意

目前主流的韦恩图都只支持5个类别,多了不能使用韦恩图。


UpSet某种程度上可以显示多于5个类别,但是结果不是很直观,不推荐。


library(ComplexHeatmap)
m = make_comb_mat(venn.list)
UpSet(m)

1. 网页版的就不说了,非常简单,直接输入数据就行;

R版的输入都是一种数据结构list,可以单独出来。


2. 极简版

options(repr.plot.width=4, repr.plot.height=5)
vp <- gplots::venn(list(Nup=names(moduleListN_DEG[["up"]]), Ndown=names(moduleListN_DEG[["down"]]),
Gup=names(moduleListG_DEG[["up"]]), Gdown=names(moduleListG_DEG[["down"]])))

3. 还没成功过,需安装rJava,代码如下:

set.seed(2017-11-08)
x <- matrix(sample(0:4, 40, TRUE, c(.5, .1, .1, .1, .1)), ncol=4)
colnames(x) <- LETTERS[1:4]
yyplot::ggvenn(x)

4. VennDiagram,只能保存图为文件(三种可选:tiff, png or svg),非常实用和美观,但是不能做下游美化。


library(VennDiagram)
venn.diagram(list(Nup=names(moduleListN_DEG[["up"]]), Ndown=names(moduleListN_DEG[["down"]]),
Gup=names(moduleListG_DEG[["up"]]), Gdown=names(moduleListG_DEG[["down"]])),
fill=c("red","green","blue","yellow"), alpha=c(0.5,0.5,0.5,0.5),
imagetype = "tiff", category.names = rep("", 4),
height = 600, width = 600, resolution = 100,
cex=2, cat.fontface=4, filename="VennDiagram.tiff")

 

参考:

R作图 在R中绘制韦恩图的几种方法 和 一些漂亮的venn图

ggplot2版本的维恩图 - Y叔公众号

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/585815.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-04-12
下一篇 2022-04-12

发表评论

登录后才能评论

评论列表(0条)

保存