Я пытаюсь использовать knitr::include_graphics()
в rmarkdown в дочерних документах. Я использую папку, настроенную так:
.
|-- Main_document.Rmd
|-- iu.jpeg
`-- subdocuments
`-- Sub_document.Rmd
это изображение как iu.jpeg
.
с Main_document.Rmd as:
---
output: pdf_document
---
# Main Document
```{r}
knitr::include_graphics('iu.jpeg',dpi = 400)
```
# Subdocument
```{r child = 'subdocuments/Sub_document.Rmd'}
```
Согласно первому чанку knitr::include_graphics()
работает как положено.
Если я сейчас использую Sub_document.Rmd со ссылкой, относящейся к поддокументу (это правильно, насколько я понимаю ...) вот так:
```{r}
knitr::include_graphics('../iu.jpeg',dpi = 400)
```
Я получаю ошибку LaTeX:
! Пакет pdftex.def Ошибка: файл `../iu.jpeg 'не найден: используется черновой вариант.
Ошибка: LaTeX не удалось скомпилировать Main_document.tex. Смотрите> https://yihui.org/tinytex/r/#debugging для подсказок по отладке. Смотрите Main_document.log> для получения дополнительной информации. Выполнение остановлено
Однако, если я использую Sub_document.Rmd со ссылкой относительно основного документа , например:
```{r}
knitr::include_graphics('iu.jpeg',dpi = 400)
```
Я получаю knitr::include_graphics()
ошибку:
Обработка файла: Sub_document.Rmd
Выход из строки 3-4 (Sub_document.Rmd)
Ошибка в knitr :: include_graphics ("iu.jpeg", dpi = 400):
Не удается найти файл (ы): "iu.jpeg"
Вызовы: ... withCallingHandlers -> withVisible -> eval -> eval ->
Выполнение остановлено
В какой-то момент это сработало (я полагаю, что с первой версией под-документа), но я только обновил все пакеты, а теперь больше нет.
Вот мой xfun::session_info('rmarkdown')
:
R version 3.6.3 (2020-02-29)
Platform: x86_64-apple-darwin15.6.0 (64-bit)
Running under: macOS Catalina 10.15.3, RStudio 1.3.911
Locale: en_US.UTF-8 / en_US.UTF-8 / en_US.UTF-8 / C / en_US.UTF-8 / en_US.UTF-8
Package version:
base64enc_0.1.3 digest_0.6.25 evaluate_0.14 glue_1.3.2
graphics_3.6.3 grDevices_3.6.3 highr_0.8 htmltools_0.4.0
jsonlite_1.6.1 knitr_1.28.2 magrittr_1.5 markdown_1.1
methods_3.6.3 mime_0.9 Rcpp_1.0.4 rlang_0.4.5
rmarkdown_2.1 stats_3.6.3 stringi_1.4.6 stringr_1.4.0
tinytex_0.20 tools_3.6.3 utils_3.6.3 xfun_0.12
yaml_2.2.1
Pandoc version: 2.9.2
Два возможных, но неудовлетворительных решения:
- Использование абсолютных путей
- Следующий двойной размещение изображения в сочетании со ссылкой относительно поддокумента:
.
|-- Main_document.Rmd
|-- iu.jpeg
`-- subdocuments
|-- Sub_document.Rmd
`-- iu.jpeg
Есть мысли? Это настоящая ошибка или я что-то не так делаю?
Спасибо !!