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

bookdown与gtsummary:为何代码块名称被添加至表格标题?

问题原因与解决方法

为什么会出现(#tab:mychunkname)?

当切换到bookdown::html_document2输出时,bookdown会自动启用交叉引用功能。gtsummary包能检测到这个环境,默认给生成的表格添加交叉引用标识(即(#tab:代码块标签)),这是它针对bookdown交叉引用场景的适配行为。而kable()直接对接knitr/bookdown的原生交叉引用系统,所以不会额外显示这个前缀。

怎么去除这个前缀?

方法1:关闭gtsummary的交叉引用适配

直接在modify_caption()里添加crossref = FALSE参数即可:

library(gtsummary)
trial %>%
  select(age, grade, response) %>%
  tbl_summary() %>%
  modify_caption(caption = "MY CAPTION", crossref = FALSE)

方法2:用bookdown原生交叉引用定义标题

如果需要保留bookdown的交叉引用编号,也可以通过代码块的tab.cap选项定义标题,替代gtsummary的modify_caption:

#| tab.cap: "MY CAPTION"
library(gtsummary)
trial %>%
  select(age, grade, response) %>%
  tbl_summary()

这样既可以正常使用交叉引用,标题也不会出现多余前缀。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.15 19:39:51