По моему опыту, перекрестные ссылки работают лучше, когда используется bookdown::pdf_document2
или bookdown::html_document2
.Обратите внимание, что имеет смысл назвать чанк, который создает рисунок, поскольку это имя используется в метке, используемой для ссылок:
---
title: "Untitled"
author: "me"
date: "today"
output:
bookdown::pdf_document2:
latex_engine: lualatex
number_sections: no
bookdown::html_document2:
default
linestretch: 1.5
bibliography: packages.bib
---
```{r setup, include=FALSE}
knitr::opts_chunk$set(echo = FALSE, warning = FALSE, message = FALSE)
knitr::write_bib(c(.packages()), 'packages.bib')
```
```{r}
df <- mtcars
library(ggplot2)
```
```{r stuff, fig.cap="some stuff"}
ggplot(df, aes(cyl, mpg)) + geom_point()
```
```{r, fig.cap="some more stuff. here I'd like to cite figure \\@ref(fig:stuff). I would also like a BibTex citation [@R-base]"}
ggplot(df, aes(cyl, hp)) + geom_point()
```
Для ссылки на BibTeX я использую автоматически созданный, но адаптацию кваш случай должен быть очевидным.