使用“plot”或“plt”前缀块标签会修改图标题

时间:2017-10-14 16:36:54

标签: r blogdown

我最近开始使用大块标签作为前缀来帮助我识别预期的输出;即,情节的“情节”,表格的“tbl”等。

今天早上我试图在剧情中添加一个fig.cap。标题将无法正确显示;它看起来像这样:

  

(#fig:plt_cars)此标题无法正确显示。

我希望如此:

  

图1:此标题将正确显示。

在玩完之后我发现添加“plot”或“plt”作为块标签的前缀会导致这种情况。

以下示例演示了这一点。

---
title: Test Post
author: Tim Trice
date: '2017-10-14'
slug: test-post
categories: []
tags: []
---

```{r}
library(ggplot2)
```

```{r}
data(cars)
```

```{r cars, fig.cap = "This caption will display correctly."}
ggplot(cars, aes(x = speed, y = dist)) + geom_point()
```

```{r plt_cars, fig.cap = "This caption will not display correctly."}
ggplot(cars, aes(x = speed, y = dist)) + geom_point()
```

```{r plot_cars, fig.cap = "Nor will this caption display correctly."}
ggplot(cars, aes(x = speed, y = dist)) + geom_point()
```

所有标题都会在正常的Rmd文档中呈现正常;但不是在blogdown。

我正在使用blogdown 0.1。

我已经在Debian和Windows上验证了这一点,但目前只有R 3.4.0。

有人可以告诉我为什么我不能使用这些前缀吗?

编辑:它不是前缀,而是使用分隔符“_”或“。”。

这些示例不起作用:

```{r test_cars, fig.cap = "Nor will this caption display correctly."}
ggplot(cars, aes(x = speed, y = dist)) + geom_point()
```

```{r test.cars, fig.cap = "Nor will this caption display correctly."}
ggplot(cars, aes(x = speed, y = dist)) + geom_point()
```

```{r c_a_r_s, fig.cap = "Nor will this caption display correctly."}
ggplot(cars, aes(x = speed, y = dist)) + geom_point()
```

编辑2:同样的问题适用于knitr :: kable字幕。

```{r tblcars}
kable(cars, caption = "This table caption works.")
```

```{r tbl_cars}
kable(cars, caption = "This table caption does not work.")
```

1 个答案:

答案 0 :(得分:1)

来自Appendix A of the blogdown book

  

[...]并且您需要阅读the bookdown book(Xie 2016)的第2章,以了解有关这些[R Markdown]功能的更多信息。

来自Section 2.4 of the bookdown book

  

如果要交叉引用从代码块生成的图形或表格,请确保块标签仅包含字母数字字符(response.DebugInformationa-zA-Z),斜杠(0-9)或破折号(/)。

如果您想要编号或交叉引用数字,则不支持下划线。