如何用R的gt库实现列名换行、居中对齐并加粗?
解决方案
要实现gt表格列名首行加粗且表头居中对齐,只需在已有代码基础上做两处调整:
- 首行加粗:在
cols_label的markdown文本中,将列名的首行用**包裹(利用gt对markdown的原生支持); - 表头居中:通过
tab_options或tab_style配置表头的对齐方式。
完整代码
df %>% gt() %>% cols_label( happiness.and.joyfullness = md("**happiness**<br />and<br />joyfullness"), joy.for.children = md("**joy**<br />for<br />children"), damages.from.environment = md("**damages**<br />from<br />environment"), safety.comes.first = md("**safety**<br />comes<br />first") ) %>% # 设置表头整体居中对齐 tab_options(column_labels.align = "center")
替代实现(用tab_style设置对齐)
如果更倾向于通过样式规则定义对齐,可替换tab_options为tab_style:
df %>% gt() %>% cols_label( happiness.and.joyfullness = md("**happiness**<br />and<br />joyfullness"), joy.for.children = md("**joy**<br />for<br />children"), damages.from.environment = md("**damages**<br />from<br />environment"), safety.comes.first = md("**safety**<br />comes<br />first") ) %>% tab_style( style = cell_text(align = "center"), locations = cells_column_labels() )
说明
- 用
**包裹首行文本,仅会让这部分内容以加粗样式显示,其余换行部分保持原有格式; - 两种对齐方式的最终效果完全一致,可根据个人编码习惯选择。
内容的提问来源于stack exchange,提问作者Homer Jay Simpson
相关产品推荐
相关产品推荐

