Tufte Rmarkdown中的gt表对齐

时间:2020-06-20 15:03:07

标签: r tufte gt

我在Rmarkdown Tufte样式的HTML中包含了gt表。我想将gt表对齐在主列的中心,而不是在同时包含主列和边距的HTML中心。我试过使用fig.align knitr选项以及tab.align命令。这是带有rmd的存储库,其中显示了问题所在:https://github.com/cassidybargell/gt-tufteThe gt table spans the main column as well as the margin.

在Tufte-HTML中使用的gt表的示例代码:

tibble(subject = "Joe",
       ytreat = "13",
       ycontrol = "9",
       ydiff = "+4") %>%  
  gt()

2 个答案:

答案 0 :(得分:0)

制作自己的CSS文件是修复它的一种方法。这是代码行:

.gt_table {
  margin-left: 0 !important;
  margin-right: 0 !important;
  width: 55% !important;
}

谢谢余耀东的帮助!

答案 1 :(得分:0)

另一种方法是定义一个钩子函数:

knitr::knit_hooks$set(gtbl = function(before, options){
if (before) {
paste( '<style> .gt_table {width: 100% !important;} </style>',
       '<div class="figure"><p class="caption marginnote shownote">', 
       options$fig.cap, 
       '</p>', 
       sep="")
} else { "</div>" }
})

在一个块内。然后当需要 gt 表时可以使用块选项 gtbl,例如:

```{r gtbl=TRUE, fig.cap="*Table 1* Energy Trends"}
tblTrends()
```

其中 fig.cap 提供右对齐的标题。

钩子函数记录在 rmarkdown cookbook