将脚注包装到第二行以适合表格(LaTeX .Rmd)

时间:2018-04-11 16:08:19

标签: r latex r-markdown kable footnotes

我想知道是否有一种方法可以使用R中的kable迫使脚注适合桌子的宽度(并换行到第二行)(I' m编织。 Rmd为PDF所以格式是乳胶)。我已同时使用add_footnote()footnote()add_footnote函数实际上会将一个脚注包裹到第二行,如果它超出了表格的宽度,但它也会强制使用上标(为此我可以在我的内容中使用表)。 footnote为我提供了删除上标的选项,但我不确定如何使其与add_footnote的格式相匹配,并将比表宽的脚注包装到第二行。另一种解决方案是从add_footnote

中删除上标
\captionsetup[table]{labelformat=empty}
```{r packs}
library(pacman)
p_load(tidyverse,knitr,kableExtra,janitor)

mydf <-data_frame(x=1:4,y=2:5,z=3:6)

fn1='This the footnote 1'
fn2='This is footnote 2 and is much longer'

mydf %>%
  kable(format='latex',booktabs=T,
        col.names=c('X','Y','Z'),
        caption=c('This method stretches', 'my table out in an ugly way')) %>%
  kable_styling(latex_options = c('hold_position')) %>%
  footnote(general=c(fn1, fn2),general_title="")

mydf %>%
  kable(format='latex',booktabs=T,
        col.names=c('X','Y','Z'),
        caption=c('This method ruins my title', 'and left justifies my table')) %>%
  kable_styling(latex_options = c('hold_position')) %>%
  footnote(general=c(fn1, fn2),general_title="",threeparttable = T)

mydf %>%
  kable(format='latex',booktabs=T,
        col.names=c('X','Y','Z'),
        caption=c('This is pretty close to perfect', 'if I could remove the superscripts')) %>%
  kable_styling(latex_options = c('hold_position')) %>%
  add_footnote(c(fn1, fn2))
```

针织PDF的屏幕截图: enter image description here

2 个答案:

答案 0 :(得分:0)

下面是{hao {1}}选项。它居中对齐。

notation="none"

enter image description here

答案 1 :(得分:0)

按照@hao 的建议设置 threeparttable = TRUE 对我有用:

add_footnote(c(fn1, fn2), threeparttable = TRUE)