Почему цвет меняется, когда площадь одного круга равна 0 (A = 0) по сравнению с тем, если она равна 0,1 (A = 0,1) --> сравните примеры 1 и 2. Также, если A и B равны 0, вместо этого круг черный зеленого цвета (см. пример 3)..
library(eulerr)
# example 1
fit <- euler(c("A" = 0.1, "B" = 10, "A&B" = 5))
p1 <- plot(fit,
fills = list(fill = c("black", "blue", "green")),
labels = F)
p1
# example 2
fit <- euler(c("A" = 0, "B" = 10, "A&B" = 5))
p2 <- plot(fit,
fills = list(fill = c("black", "blue", "green")),
labels = F)
p2
# example 3
fit <- euler(c("A" = 0, "B" = 0, "A&B" = 5))
p3 <- plot(fit,
fills = list(fill = c("black", "blue", "green")),
labels = F)
p3
Изменить:
Я нашел обходной путь с этим здесь (см. Ниже). Но порядок цветов, кажется, ведет себя очень странно. A должен быть черным, B --› синим и A&B --› зеленым. Если ни один из них не равен 0, это правильный порядок --> c (черный, синий, зеленый). Но если либо A, либо B равно 0, тогда порядок другой, в основном так же, как они появляются слева направо на графике. странный....
combo <- c(A=1, B = 10, "A&B" = 1)
fit <- euler(combo)
p <- plot(fit,
fills = list(fill =
if (combo["A"] == 0) {
c("green", "blue")
} else if (combo["B"] == 0) {
c("black", "green")
} else {
c("black", "blue", "green")
}
),
labels = F)
p