我正试图在tex文件中包含一个用gt((函数生成的表。我创建了一个.Rnw文件,然后用knifer编织它,并用pdflatex编译。在编译过程中,我得到了一个错误:"没有行在这里结束",这是由gt((在表头插入的新行引起的。这是MWE:
documentclass{article}
usepackage[utf8]{inputenc}
usepackage{booktabs}
usepackage{longtable}
usepackage{caption}
begin{document}
<<setup, include=FALSE>>=
library(knitr)
library(tidyverse)
library(gt)
opts_chunk$set(echo=FALSE)
@
This is a dataframe formatted with the texttt{gt} package.
<<>>=
tibble(
group=rep(c("A", "B"), each=5),
age = c(20, 24, 22, 27, 29, 21, 24, 23, 30, 31)) %>%
gt %>%
tab_header(title="Some title")
@
end{document}
tex文件中的结果表为:
begin{longtable}{lr}
caption*{
large Some title\
small \ % This newline causes the error
} \
toprule
group & age \
midrule
A & 20 \
A & 24 \
A & 22 \
A & 27 \
A & 29 \
B & 21 \
B & 24 \
B & 23 \
B & 30 \
B & 31 \
bottomrule
end{longtable}
(我在编织后手动添加了注释(
由于标题中的换行符(\
(,我得到了:./mwe.tex:69: LaTeX Error: There's no line here to end
。如果没有换行符,PDF将按预期创建。有没有一种方法可以在不必手动编辑tex文件的情况下解决这个问题?
我发现,当没有定义字幕时,这是gt的一个错误。解决方法是1( 添加空格作为字幕或
tab_header(title = md("Data listing from **gtcars**"), subtitle = md(" "))
2( 手动编辑tex文件删除logntable中的CCD_ 3。
请访问查看问题https://github.com/rstudio/gt/issues/197