[英]2-column LaTeX environment table* in kable, kableExtra
我想在兩列LaTeX文章中包括一個更寬的表。 這可以在LaTeX中使用\\begin{table*} ... \\end{table*}
而不是\\begin{table} ... \\end{table}
。 如何告訴R包kable或kableExtra實現此目的?
下面產生了通常的\\begin{table}
:
library(kableExtra)
kable(head(cars, 1), format = "latex") %>%
kable_styling()
產生:
#> \begin{table}[H]
#> \centering
#> \begin{tabular}{r|r}
#> \hline
#> speed & dist\\
#> \hline
#> 4 & 2\\
#> \hline
#> \end{tabular}
#> \end{table}
但是我想要的是以下內容:
#> \begin{table*}[H]
#> \centering
#> \begin{tabular}{r|r}
#> \hline
#> speed & dist\\
#> \hline
#> 4 & 2\\
#> \hline
#> \end{tabular}
#> \end{table*}
我知道我可以使用gsub
破解輸出,但是想知道是否有方法可以干凈地完成它。
由reprex軟件包 (v0.2.0)創建於2018-05-05。
在Yiyi Xie告訴我已經可以做到這一點之前,我一直在同一個問題上掙扎,甚至為此還向knitr添加了功能請求。
只需將table.env='table*'
添加為table.env='table*'
的參數即可:
knitr::kable(head(cars,1), format = "latex", table.env='table*')
將產生
\begin{table*}
\begin{tabular}{r|r}
\hline
speed & dist\\
\hline
4 & 2\\
\hline
\end{tabular}
\end{table*}
latex_table_env
中有一個kable_styling
library(kableExtra)
kable(head(cars, 1), format = "latex") %>%
kable_styling(latex_table_env = "table*")
我不知道knitr是否可以實現,但是使用xtable
可以輕松實現:
data(cars)
library(xtable)
library(magrittr)
xtable(head(cars, 1), align="rr|r") %>%
print.xtable(
floating.environment="table*", # use table* environment
include.rownames=FALSE,
table.placement="H"
)
# % latex table generated in R 3.4.4 by xtable 1.8-2 package
# % Sat May 5 16:47:49 2018
# \begin{table*}[H]
# \centering
# \begin{tabular}{r|r}
# \hline
# speed & dist \\
# \hline
# 4.00 & 2.00 \\
# \hline
# \end{tabular}
# \end{table*}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.