在 R-Markdown 中使用 knitr 和 kableExtra 的表格单元格中的乳胶公式或符号,
Posted
技术标签:
【中文标题】在 R-Markdown 中使用 knitr 和 kableExtra 的表格单元格中的乳胶公式或符号,【英文标题】:Latex Formulas or symbols in table cells using knitr and kableExtra in R-Markdown, 【发布时间】:2018-08-31 04:08:37 【问题描述】:感谢 jaySf,我能够创建一个 pdf 文件,其中包含带有脚注的漂亮表格,其中显示公式和符号,包括 R Markdown、Latex、knitr
和 kableExtra
(在他的示例下方):
---
title: "Untitled"
output: pdf_document
---
```r tab
library(knitr)
library(kableExtra)
df <- data.frame(v1=rnorm(6), v2=runif(6), v3=rbinom(6, 1, .33),
row.names=LETTERS[1:6])
kable(df, "latex", align="c", booktabs=TRUE) %>%
footnote(general=c("$a^2+b^2=c^2,$",
"$\\\\sigma^2=\\\\frac1n-1\\\\sum_i=1^n(x_i-\\\\barx)^2;$",
"1,000 \\\\$;", "100\\\\%."),
number=c("Hello\ there! \\\\textitHello\ there!"),
footnote_as_chunk=TRUE,
escape=FALSE)
```
导致:
现在我正在努力将符号或公式放入表格的实际单元格之一。有人可以举一个例子,在一个单元格中显示常规文本和符号和公式吗?最好也在表格标题中相同,在列名之一中和在表格的行名中一一对应,并带有一些编号的脚注,以引用其中之一中的信息单元格或标题或列或行名称,我渴望一个拥有一切的例子!非常感谢。
【问题讨论】:
【参考方案1】:当然:记下escape
传递给kable
的参数:
---
title: "Untitled"
output: pdf_document
---
```r tab
library(knitr)
library(kableExtra)
df <- data.frame(v1=rnorm(6), v2=runif(6), v3=rbinom(6, 1, .33),
row.names=LETTERS[1:6])
df$v4 <- c('My formula $\\sum_i=1^9$')
kable(df, "latex", align="c", booktabs=TRUE, escape = F, caption = '$\\Gamma$') %>%
footnote(general=c("$a^2+b^2=c^2,$",
"$\\\\sigma^2=\\\\frac1n-1\\\\sum_i=1^n(x_i-\\\\barx)^2;$",
"1,000 \\\\$;", "100\\\\%."),
number=c("Hello\ there! \\\\textitHello\ there!"),
footnote_as_chunk=TRUE,
escape=FALSE)
```
另一个带有斜体列名和附加标题的示例:
```r, echo = F
library(knitr)
library(kableExtra)
df <- data.frame(v1=rnorm(6), v2=runif(6), v3=rbinom(6, 1, .33),
row.names=LETTERS[1:6])
df$v4 <- c('My formula $\\sum_i=1^9$')
# italic column headers
colnames(df) <- paste0("\\textit", colnames(df),"")
kable(df, "latex", align="c", booktabs=TRUE, escape = F, caption = '$\\Gamma$') %>%
footnote(general=c("$a^2+b^2=c^2,$",
"$\\\\sigma^2=\\\\frac1n-1\\\\sum_i=1^n(x_i-\\\\barx)^2;$",
"1,000 \\\\$;", "100\\\\%."),
number=c("Hello\ there! \\\\textitHello\ there!"),
footnote_as_chunk=TRUE,
escape=FALSE) %>%
add_header_above(header = c("\\\\textbfResults $\\\\Delta$" = 5), escape = F)
```
【讨论】:
美丽。这绝对可以帮助很多在桌子上苦苦挣扎的人! 亲爱的 Martin,您能否提供一个示例,其中列名(甚至标题上方的标题)为斜体、符号或公式?非常感谢,它将使此页面完整! 完成。总是一样。只需在需要的地方添加原始 tex。 尤伯盖尔!非常感谢! 谢谢马丁!!这太有帮助了!我在表格方面遇到了很多困难,而且我在其他地方找到的其他信息都不适用于 PDF!以上是关于在 R-Markdown 中使用 knitr 和 kableExtra 的表格单元格中的乳胶公式或符号,的主要内容,如果未能解决你的问题,请参考以下文章
R语言R-markdown实战示例R-markdownR-markdown生成结果汇报的HTML文件
使用 R markdown 和 knitr:可以在 YAML 中解释 R 对象