2016-09-14 韦恩图,也称为文氏图,用于显示元素集合重叠区域的图示。下面我们简单介绍几种绘制韦恩图的方法,至于其中参数释义,这里不再做解释。 #安装limma包 library(gplots) oneName <- function()paste(sample(letters,5,replace=""> geneNames <- replicate(1000,=""> GroupA <- sample(genenames,="" 400,="" replace=""> GroupB <- sample(genenames,="" 750,="" replace=""> GroupC <- sample(genenames,="" 250,="" replace=""> GroupD <- sample(genenames,="" 300,="" replace=""> input <> venn(input,showSetLogicLabel = F) library(venneuler) m <> A=c(1.5, 0.2, 0.4, 0, 0), B=c(0 , 0.2, 0 , 1, 0), C=c(0 , 0 , 0.3, 0, 1))) plot(venneuler(m)) library(VennDiagram) venn.plot <-> area1 = 111, area2 = 82, area3 = 96, area4 = 121, n12 = 30, n13 = 37, n14 = 52, n23 = 27, n24 = 36, n34 = 45, n123 = 13, n124 = 17, n134 = 25, n234 =19, n1234 = 9, category = c('a', 'b', 'c', 'd'), fontface='plain',fontfamily = 'serif', fill = c('orange', 'red', 'green', 'blue'), cat.col = c('orange', 'red', 'green', 'blue'),col=NA,margin=0.1, lty =1,cex =1,cat.cex =1,alpha = 0.5)
symbols <- list(a="sample(letters," 10),="" b="sample(letters," 5),="" c="sample(letters,"> symbols.all <-> symbols.mat <- matrix(0,="" nrow="length(symbols.all)," ncol="length(symbols)," dimnames="list(genes=symbols.all," groups=""> for(i in 1:length(symbols)) symbols.mat[symbols[[i]], i] <-> head(symbols.mat) library(UpSetR) upset(as.data.frame(symbols.mat)) symbols.venn <- split(rownames(symbols.mat),="" apply(symbols.mat,="" 1,="" paste,="" collapse=''> names(symbols.venn) names(symbols.venn) <- sapply(names(symbols.venn),="" function(.ele)="" paste(colnames(symbols.mat)[as.logical(as.numeric(strsplit(.ele,="" '')[[1]]))],="" collapse='__'> symbols.venn > symbols.venn $C [1] 'b' 'e' 'l' $B [1] 'g' 'n' 'p' 'z' $A [1] 'c' 'd' 'u' 'x' $A__C [1] 'f' 'i' 'q' 's' 'y' $A__B [1] 'r' |
|