Перерисовка диаграммы Венна

Каким будет самый простой способ перерисовать диаграмму venn, используя R? У меня нет данных, которые использовались для создания диаграммы Венна, но остальные диаграммы были взяты в R... Я хотел бы сохранить одну и ту же структуру, поэтому это означает, что мне нужно как-то перерисовать ее в R.

Есть ли у вас какие-либо идеи, что было бы самым простым способом сделать это? Это диаграмма venn, которую я должен создать в R

Это код, который я использовал для других диаграмм venn.

v1 <- venn.diagram(list(1=a, 2=b, 3=c, 4=d), filename=NULL, fill=rainbow(4), cex.prop=NULL, cex=1.5)
png("TEST.png", width=7, height=7, units='in', res=150)
grid.newpage()
grid.draw(v1)
dev.off()

Ответ 1

Вы можете напрямую вызвать функции draw.venn. * и области перекрытия ввода. Это будет утомительно, но я думаю, что это ваш единственный вариант. вы заметите, что порядок групп отличается, возможно, есть способ контролировать это, но я не уверен, что это на данный момент.

a <- c(2411, 12433,939,238, 1575,2483,2923,540)
b <- c(1575, 2483,2923, 540, 1255, 1330, 615, 622)
c <- c(1247, 1330, 2483, 12433, 150, 615, 2923, 939)
d <- c(150,615,2923,939, 1245, 622, 540, 238)


draw.quad.venn(area1 = sum(a), area2 = sum(b), area3 = sum(c), area4 = sum(d), 
               n12 = sum(a[5:8]), n13 = sum(a[c(2,3,6,7)]), n14 = sum(a[c(3,4,7,8)]), 
               n23 = sum(b[c(2,3,6,7)]), n24 = sum(b[c(3,4,7,8)]), 
               n34 = sum(c[5:8]),
               n123 = sum(a[6:7]),
               n134 = sum(a[c(3,7)]),
               n124 = sum(a[7:8]),
               n234 = sum(b[c(3,7)]),
               n1234 = 2923, category = c("A","B","C","D"), 
               fill = colorspace::rainbow_hcl(4),
               col = colorspace::rainbow_hcl(4)[c(1,3,4,2)], lwd = rep(1, 4))

введите описание изображения здесь