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

无法为ggplot箱线图添加p值,报错‘object 'group' not found’求助

解决ggplot箱线图添加p值时的object 'group' not found错误

错误原因

add_pvalue()函数默认依赖主绘图数据中的分组变量,但未明确指定时,可能因参数传递逻辑找不到group变量——你的tibble格式p_vals数据框结构和命名是正确的,问题和该数据框无关。

解决方法

最直接的修复是在add_pvalue()中显式指定x轴的分组变量名称:

  1. 修改最后一行代码,添加x = "group"参数:
add_pvalue(p_vals, x = "group")
  1. 额外检查项:
    • 确认CD4数据框中确实存在group列,列名无拼写错误
    • 确保CD4$group的取值("Sync"/"Meta"/"Poly")和p_vals中的分组名称完全匹配(大小写、空格均需一致)
    • 若CD4$group不是因子类型,先做转换:
      CD4$group <- as.factor(CD4$group)
      

修改后的完整绘图代码示例

ggplot(CD4, aes(x=group,y=data,group=group, fill=as.factor(group), outlier.colour="red")) + 
  stat_boxplot(geom ='errorbar', width = 0.2) +
  geom_boxplot(alpha = 0.75,outlier.shape = NA, show.legend = FALSE) +
  geom_point(aes(fill=group),pch=21,size=2,colour="black",position = "jitter", show.legend = FALSE, alpha = 10)+
  ggtitle("CD4_naive") +
  labs(x = "Group",y="% of CD4+ T cells") +
  theme_classic() +
  theme(legend.position = "none") +
  scale_y_continuous(labels = percent_format(accuracy = 1))+
  scale_fill_manual(values = c("#29ada0", "#f7bb25", "#E71D36"))+
  theme_prism(base_size = 9) +
  add_pvalue(p_vals, x = "group")

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.17 11:05:19