You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何移除ggforce::geom_mark_ellipse生成的标记椭圆的边框?

移除ggforce::geom_mark_ellipse的边框仅保留填充椭圆

要移除geom_mark_ellipse生成的椭圆边框,只保留填充效果,核心是将椭圆的轮廓颜色设为NA,具体有两种实现方式:

方法1:移除colour映射并关闭边框

直接在aes中仅保留fill的物种映射,同时显式设置colour = NA来关闭边框绘制:

library(palmerpenguins)
library(tidyverse)
library(ggplot2)
library(ggforce)

penguins <- penguins %>% drop_na()

p <- penguins %>%
  ggplot(aes(x = bill_length_mm, y = flipper_length_mm))+
  geom_mark_ellipse(aes(fill = species),
                   colour = NA,  # 关键:关闭边框
                   expand = unit(0.5,"mm"),
                   show.legend = F)+
  geom_point(aes(color = species))

print(p)

方法2:保留colour映射但强制覆盖为无轮廓

如果需要保留aes中的colour映射(比如后续复用),可以直接用外层参数colour = NA覆盖映射效果:

geom_mark_ellipse(aes(colour=species, fill = species),
                   colour = NA,  # 强制取消轮廓
                   expand = unit(0.5,"mm"),
                   show.legend = F)

额外提示

如果担心填充椭圆遮挡下方散点,可添加alpha参数调整填充透明度:

geom_mark_ellipse(aes(fill = species),
                   colour = NA,
                   alpha = 0.3,  # 设置半透明填充
                   expand = unit(0.5,"mm"),
                   show.legend = F)

内容的提问来源于stack exchange,提问作者Wasim Aftab

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.15 19:01:12