[英]kableExtra latex code not working for bold face
我正在尝试使用kableExtra
创建一些表,以便稍后在外部乳胶文档上使用它们,因此我想将表导出为 .tex 文档。 这很好用,除非我尝试在某些行中使用粗体。
这是我正在使用的代码的 MWE:
require(kableExtra)
require(dplyr)
bold_letters = c(1,0,1)
df = cbind.data.frame("Noms" = c("A", "B", "C"), "var1" = c(1,2,3))
df %>%
mutate(Noms = cell_spec(Noms, bold = ifelse(bold_letters==0,FALSE,TRUE))) %>%
kable(format = "latex", escape = F, row.names = F, align = "c")
问题在于粗体。 如果我将它放在降价中并编织它,它可以正常工作,但是如果我尝试导出 tex 代码,我会得到类似的信息:
\begin{tabular}{c|c}
\hline
Noms & var1\\
\hline
<span style=" font-weight: bold; " >A</span> & 1\\
\hline
<span style=" " >B</span> & 2\\
\hline
<span style=" font-weight: bold; " >C</span> & 3\\
\hline
\end{tabular}
据我所知,这不是乳胶代码。
PS:我可以创建表格并将其导出为图像,但质量很差,而且它包含表格两侧的白色带作为图像的一部分,因此不切实际。
也许你会在没有dplyr
情况下做到这dplyr
。 您还需要在cell_spec
format="latex"
,否则它会格式化 HTML。
library(kableExtra)
bold_letters <- c(1,0,1)
df <- cbind.data.frame(Noms=c("A", "B", "C"), var1=c(1, 2, 3))
df$Noms <- cell_spec(df$Noms, format="latex",
bold=ifelse(bold_letters == 0, FALSE, TRUE))
kable(df, format="latex", escape=FALSE, row.names=FALSE, align="c")
# \begin{tabular}{c|c}
# \hline
# Noms & var1\\
# \hline
# \textbf{A} & 1\\
# \hline
# B & 2\\
# \hline
# \textbf{C} & 3\\
# \hline
# \end{tabular}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.