国际化R knitr图标题标签

时间:2017-11-08 06:50:02

标签: r knitr r-markdown

我想用knitr生成一个Latex文档,但它不允许我将图形的标签更改为我的语言。代码:

```{r rstudio, echo = FALSE,  fig.cap = "RStudio IDE", fig.margin = T}
plot(pressure)
```

这会产生:

enter image description here

但是我希望标题标签能够读取Figura :(葡萄牙语)而不是图:。我添加了变量lang: pt-br,它会在我用\@ref(fig:rstudio)调用它时进行更正,但不修复数字标签。

  • 如何更改Rmarkdown中的标题标签?

1 个答案:

答案 0 :(得分:1)

您实际上可以直接在Rmd文件中包含LaTeX代码来更改设置。

正如this answer所解释的,名称如"图"和"内容"存储在\figurename\contentsname等宏中。要更改它们,您必须使用序言中的\renewcommand更改相应宏的定义:

\renewcommand{\figurename}{Fig.}
\renewcommand{\contentsname}{Table of Contents}

这是"名称宏"的列表(及其默认含义)由LaTeX标准类articlebookreport定义:

  • \abstractname [仅articlereport]:摘要
  • \appendixname:附录
  • \bibname [仅bookreport]:参考书目
  • \chaptername [仅bookreport]:第
  • \contentsname:目录
  • \figurename:图
  • \indexname:索引
  • \listfigurename:数字清单
  • \listtablename:表格列表
  • \partname:部分
  • \refname [仅article]:参考
  • \tablename:表格

以下是您的方案的MWE:

---
output:
  pdf_document: default
---
\renewcommand{\figurename}{YOUR LABEL}
\renewcommand{\tablename}{TABLE LABEL}

```{r Table, echo =FALSE}
knitr::kable(iris[1:5,], caption = "A table")
```

```{r pressure, echo=FALSE, fig.cap="Test Caption"}
plot(pressure)
```

替代方法

精彩的套餐预订扩展了RMarkdown和knitr的基础知识。正如here所解释的那样,软件包允许您设置内部化。