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

如何修改gtsummary中modify_spanning_header生成标题下方的线条颜色

修改gtsummary表格跨列标题下方线条样式

以下是来自gtsummary官方教程的示例代码,运行后可生成患者特征汇总表格:

# install.packages("gtsummary")
library(gtsummary)

trial |>
  tbl_summary(by = trt, includ = c(age, grade)) |>
  add_p(pvalue_fun = label_style_pvalue(digits = 2)) |>
  add_overall() |>
  add_n() |>
  modify_header(label ~ "**Variable**") |>
  modify_spanning_header(c("stat_1", "stat_2") ~ "**Treatment Received**") |>
  modify_footnote_header("Median (IQR) or Frequency (%)", columns = all_stat_cols()) |>
  modify_caption("**Table 1. Patient Characteristics**") |>
  bold_labels()

运行上述代码生成的表格如下:
表格展示图

技术问题

如何修改“Treatment Received”标题下方的线条样式(例如改为红色)?
(线条位置标注:
线条位置标注图)


解决方案

要修改跨列标题下方的线条样式,需借助gt包的自定义样式功能(gtsummary底层基于gt实现),具体操作如下:

  1. 将gtsummary生成的表格转换为gt对象,再用gt::tab_style()定位跨列标题并设置边框样式。
  2. 通过cells_column_spanners()指定目标跨列标题,cell_borders()定义边框的颜色、粗细等属性。

修改后的完整代码:

# install.packages("gtsummary")
# install.packages("gt")
library(gtsummary)
library(gt)

trial |>
  tbl_summary(by = trt, includ = c(age, grade)) |>
  add_p(pvalue_fun = label_style_pvalue(digits = 2)) |>
  add_overall() |>
  add_n() |>
  modify_header(label ~ "**Variable**") |>
  modify_spanning_header(c("stat_1", "stat_2") ~ "**Treatment Received**") |>
  modify_footnote_header("Median (IQR) or Frequency (%)", columns = all_stat_cols()) |>
  modify_caption("**Table 1. Patient Characteristics**") |>
  bold_labels() |>
  # 转换为gt对象并设置跨列标题底部边框
  as_gt() |>
  tab_style(
    style = cell_borders(
      sides = "bottom",
      color = "red",
      weight = px(2) # 可根据需求调整线条粗细
    ),
    location = cells_column_spanners(spanners = "Treatment Received")
  )

关键说明:

  • 需提前安装并加载gt包,这是进行精细样式调整的前提。
  • cell_borders()参数说明:
    • sides:指定要修改的边框位置(此处为bottom即底部线条)
    • color:设置边框颜色,支持颜色名称(如"red")或十六进制色值
    • weight:设置线条粗细,单位为像素(px)
  • cells_column_spanners()中的spanners参数必须与跨列标题文本完全匹配,确保样式应用到正确位置。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.12 14:40:12