Ответ здесь .Однако я не претендую на это.Общее правило для упорядочения областей на диаграмме Венна заключается в использовании ее двоичного представления.Мой пакет nVennR
использует это представление и может дать вам быстрый ответ на любое количество наборов:
> library(nVennR)
> myV <- plotVenn(list("A"=c("a","b","c"), "B"=c("a","b","c","d"), "C"=c("a","c","d")), showPlot = F)
> listVennRegions(myV)
$`0, 1, 1 (B, C)`
[1] "d"
$`1, 1, 0 (A, B)`
[1] "b"
$`1, 1, 1 (A, B, C)`
[1] "a" "c"
> listVennRegions(myV, na.rm = F)
$`0, 0, 0 ()`
[1] NA
$`0, 0, 1 (C)`
[1] NA
$`0, 1, 0 (B)`
[1] NA
$`0, 1, 1 (B, C)`
[1] "d"
$`1, 0, 0 (A)`
[1] NA
$`1, 0, 1 (A, C)`
[1] NA
$`1, 1, 0 (A, B)`
[1] "b"
$`1, 1, 1 (A, B, C)`
[1] "a" "c"
Существует виньетка с более подробной информацией об использовании.