解决方案有好几种:
- 网页版,无脑绘图,就是麻烦,没有写代码方便
- 极简版,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叔公众号
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)