我有两个数据集,其中即时计算该数据集中每个样本的数量。我想将两个数据集的每个样本的编号合并,然后使用R创建一个VennDiagram,其中最大的数据集的主要编号和括号中的较小的数据集编号。
我当前正在使用的R代码
grid.newpage()
temp <- draw.triple.venn(area1 = 428,
area2 = 145,
area3 = 303,
n12 = 26,
n23 = 16,
n13 = 14,
n123 = 9,
category = c("text1", "text2", "text3"),
scaled=FALSE,
ext.text=FALSE)
grid.draw(temp)
pdf(file="figure1.pdf")
grid.draw(temp)
dev.off()
我得到的结果
我想创造什么
我已经看过eulerr软件包和Venn图软件包,但是我似乎无法弄清楚是否有办法使之成为可能。
非常感谢所有帮助。非常感谢。
答案 0 :(得分:1)
不确定“小型”数据集的外观,但这可以解决问题
在这里,您可以使用自定义标签向网格中添加迹线,并且y坐标与“大”数据集的y坐标成比例。
library(VennDiagram)
temp <- draw.triple.venn(area1 = 428,
area2 = 145,
area3 = 303,
n12 = 26,
n23 = 16,
n13 = 14,
n123 = 9,
category = c("text1", "text2", "text3"),
scaled=FALSE,
ext.text=FALSE)
temp[[17]] <- temp[[13]]
temp[[17]]$y <- temp[[13]]$y * 0.8
temp[[17]]$label <- '(3)'
temp[[18]] <- temp[[9]]
temp[[18]]$y <- temp[[9]]$y * 0.95
temp[[18]]$label <- '(4)'
temp[[19]] <- temp[[7]]
temp[[19]]$y <- temp[[7]]$y * 0.95
temp[[19]]$label <- '(5)'
grid.draw(temp)