我尝试绘制一个静脉,其中一组是另一组的子集。但由于某种原因,它并不总是完全在集合中绘制,而只是在集合之外。我做错了什么?
file <- read.csv(file="C:\\test.csv",head=TRUE,sep=",")
Lists <- list(file$A,file$B,file$C)
items <- sort(unique(unlist(Lists)))
MAT <- matrix(rep(0,length(items)*length(Lists)), ncol=3)
colnames(MAT) <- c("A","B","C")
rownames(MAT) <- items
lapply(seq_along(Lists), function(i){
MAT[items %in% Lists[[i]],i] <<- table(Lists[[i]])
})
library(venneuler)
v <- venneuler(MAT>0)
csv文件示例,其中C是B
的子集A B C
37 16 16
38 25 25
58 35 35
103 36 36
106 37 37
108 48 66
117 52 80
196 58 90
206 66 97
240 74
251 80
266 90
269 97
325 226
346 266
353 298
428 429
575 514
524