r markdown kable将表格宽度分成多个表格彼此相同

时间:2016-01-15 14:36:15

标签: r knitr r-markdown

有没有办法告诉kable将长表(超出文本或页面宽度)分成多个显示在彼此下方的表?

我的意思是,你可以这样做:

```{r}
data <- data.frame(....)
kable(data[,1:6])
kable(data[,7:12])
```

但是,要确定在哪里打破data.frame,这需要做很多工作。有没有办法自动完成?我在kable函数本身找不到任何选项。

计算上的一种方法是计算表(和标题)中最长条目的字符串宽度,并根据此情况分解表。但我仍然希望有一个很好的方法来做到这一点......

最好我想为html页面生成这样做,但是为乳胶做一个方法也很棒。

1 个答案:

答案 0 :(得分:13)

pander可以为您和更多人做到这一点 - 快速示例使用直接指定的函数参数进行拆分表功能(有关详细信息,请参阅static,由一般{{1}调用在后台的S3方法):

?pandoc.table

您可以通过global options等许多其他内容设置字符数的全局阈值,例如:

pander