kableExtra
似乎在字幕包含某些字符时破坏了LaTeX中电缆的正确格式。
kableExtra::kable
,则 knitr::kable
的格式将正确。
如果加载了kableExtra
,以下代码将产生格式奇怪的结果。
---
title: "Mock"
output:
pdf_document:
keep_tex: true
---
```{r header, echo= FALSE, include = FALSE, warning= FALSE}
library(skimr)
library(knitr)
# library(kableExtra)
resumir <- function(var, unit = "", caption = NULL) {
if(is.null(caption)) {caption <- deparse(substitute(var))}
skim_to_wide(var) %>%
mutate_all(as.numeric) %>%
kable(caption = paste0(caption, " (", unit, ")"))
}
mtcars2 <- mtcars %>%
rename("NO_CYL" = 'cyl', "PEAK_PERF" = "mpg")
attach(mtcars2)
```
`r resumir(POWER_HRS, unit = "$hours$")`
我想我已经知道发生了什么事,但是经过所有的麻烦之后,我找到了问题,我认为这很正常,如果有人提出来(或者我会稍等)。
答案 0 :(得分:0)
因此,为了简单起见,问题出在标题中带有下划线。唯一有效的解决方案是删除它们,这并非过分合理。
---
title: "Mock"
output:
pdf_document:
keep_tex: true
---
```{r header, echo= FALSE, include = FALSE, warning= FALSE}
library(knitr)
library(kableExtra)
attach(mtcars)
```
`r kable(cyl, caption = "Cylinder_No.")`
knitr
有一个bug report,但是knitr
目前可以正常使用。