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

如何在R的gt表格中将分组行标签(如Deltaic-Upper Burgi)设为粗体?

解决gt表格分组行标签加粗的问题

gt 0.8.0版本后,cell_row_groups()函数已被官方弃用,这就是你收到警告且样式不生效的原因。现在需要用tab_style()搭配cells_row_groups()来实现分组行标签加粗的需求,同时调整group_by的顺序确保样式应用到正确的层级。

步骤1:更新gt到最新版本(可选但推荐)

如果你的gt版本较低,先更新避免兼容性问题:

install.packages("gt")

步骤2:修改代码实现分组标签加粗

假设你的数据已按目标分组列完成group_by,替换原弃用代码为以下写法:

library(gt)

# 示例:假设数据框为df,按包含Deltaic - Upper Burgi的列分组(比如命名为Zone)
your_gt_table <- df %>%
  group_by(Zone) %>%  # 确保此处分组列是你要设置加粗标签的列
  gt() %>%
  # 若不需要保留Tribe列的粗体样式,可删除下面这行;需要则保留
  # tab_style(style = cell_text(weight = "bold"), locations = cells_body(columns = Tribe)) %>%
  # 设置分组行标签为粗体
  tab_style(
    style = cell_text(weight = "bold"),
    locations = cells_row_groups()
  )

# 输出表格
your_gt_table

步骤3:处理多层分组的情况

如果你的数据是多层分组(比如先按大类再按小类),可以通过groups参数指定要加粗的层级:

your_gt_table <- df %>%
  group_by(Main_Zone, Sub_Zone) %>%  # 第一层为Main_Zone,第二层为Sub_Zone
  gt() %>%
  # 仅加粗第一层分组标签
  tab_style(
    style = cell_text(weight = "bold"),
    locations = cells_row_groups(groups = 1)
  ) %>%
  # 第二层分组标签加粗并设置颜色(可选)
  tab_style(
    style = cell_text(weight = "bold", color = "#2c3e50"),
    locations = cells_row_groups(groups = 2)
  )

关于group_by顺序的注意事项

group_by的顺序直接决定了分组标签的层级:

  • 第一个group_by的列是最顶层的分组标签
  • 后续的列依次是下一层级的标签
    如果样式没应用到你想要的Deltaic - Upper Burgi这类标签,检查group_by的列是否正确,确保该标签所在的列是group_by中的对应层级。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.30 00:17:10