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

如何在ggplot2生成的箱线图上添加额外的红色指定数据点?

解决方法

你需要先构造一个存储额外待添加点的新数据框,列名和原数据的variable、value保持对应,即可匹配ggplot的映射和分面规则自动添加到对应箱线图上。


完整可运行示例代码

基础数据与绘图环境准备

# 构造原数据
df<- data.frame(c(rep('v1',4),rep('v2',4)),c(1,2,3,4,5,6,7,8))
colnames(df) <- c('variable', 'value')

# 加载ggplot2
library(ggplot2)

构造额外指定点的数据框

以下示例为给v1添加值为2.5的点、给v2添加值为7.2的点,你可以自行替换为你需要的指定数值,单个变量需要加多个点的话,补充对应行即可:

extra_points <- data.frame(
  variable = c("v1", "v2"),
  value = c(2.5, 7.2)
)

最终绘图代码

新增单独绑定额外数据源的geom_point层即可:

j <- ggplot(df, aes(factor(variable), value)) 
j + 
  geom_boxplot() + 
  # 添加红色指定点,可调整size参数修改点的大小
  geom_point(data = extra_points, color = "red", size = 3) +
  facet_wrap(~variable, scale="free")

补充说明

  • geom_point支持单独指定data参数,不需要和全局ggplot的数据源一致,只要列名匹配全局的美学映射规则即可
  • 如果需要修改点的样式,可以额外加shape参数调整点的形状,加stroke参数调整点的边框粗细

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.30 18:15:03