如何使用填充颜色为 ggforce::geom_mark_ellipse 标签着色

How to color ggforce::geom_mark_ellipse labels with fill color

目前是否可以使 ggforce::geom_mark_ellipse(label=) 生成的 标签 着色?

在下面的示例中,我希望看到绿色的 versicolor 字体:

是的,但不像您使用任何其他映射美学那样直接。您必须构建一个新层,在其中更改颜色并正确过滤层。如果你有 10 个以上的组,每个组都需要自己的标签颜色,你会发现这变得非常费力。

library(ggplot2)
library(ggforce)

ggplot(iris, aes(Petal.Length, Petal.Width)) +
  geom_mark_ellipse(aes(fill = Species, label = Species,
                        filter = Species != 'versicolor')) +
  geom_mark_ellipse(aes(fill = Species, label = Species,
                        filter = Species == 'versicolor'),
                    label.colour = "green") +
  geom_point()