繁体   English   中英

Knitr:文件名中的自动图形编号

[英]Knitr : automated figure numbering in the file names

编译针织报告时,我想自动更改保存在光盘上的文件名(例如label-1.pdf),以包括图形标题的自动编号(例如Figure-054.pdf)。

范例:

---
title: "Test"
output: pdf_document
---

```{r setup, include=FALSE}
knitr::opts_chunk$set(echo = TRUE,  fig.path = 'Figures/', fig.cap = '  ', fig.pos = "H")
```

```{r}
summary(cars)
```

```{r cars}
plot(cars)
```

```{r, fig.cap = 'pressure'}
plot(pressure)
```

```{r}
summary(iris)
```

```{r}
plot(iris)
plot(iris[,1] ~ iris[,5])
```

我获得4个文件名

cars-1.pdf
unnamed-chunk-2-1.pdf
unnamed-chunk-4-1.pdf
unnamed-chunk-4-2.pdf

我想改为获得这样的东西(即对应于pdf报告中的编号):

Figure-001.pdf
Figure-002.pdf
Figure-003.pdf
Figure-004.pdf

我知道可以使用fig.process knitr选项更改图形名称。 但是我不知道如何捕获自动数字。

我有部分答案。

您必须相应地命名块:

---
title: "Test"
output: pdf_document
---

```{r setup, include=FALSE}
knitr::opts_chunk$set(echo = TRUE,  fig.path = 'Figures/', fig.cap = '  ', fig.pos = "H")
```

```{r}
summary(cars)
```

```{r Figure1}
plot(cars)
```

```{r Figure2, fig.cap = 'pressure'}
plot(pressure)
```

```{r }
summary(iris)
```

```{r Figure3}
plot(iris)

```

```{r Figure4}
plot(iris[,1] ~ iris[,5])
```

理想情况下,每块创建一个图形。 我还不知道如何消除knitr在块名称末尾添加的多余数字。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM