Как я могу связать .Rnw-файл в латекс, используя графики как окружение tikzpicture? (ошибка: формальный аргумент совпал с несколькими фактическими аргументами) - PullRequest
1 голос
/ 26 января 2020

Я пытаюсь преобразовать документ .Rnw в латекс (для включения в другой .tex-документ). Все графики создаются с использованием устройства tikz, но каждый из них является отдельным документом. Моя цель - иметь их в окружении tikzpicture.

Попытка решения

Согласно документации knitr на графиках , должна быть возможность передать standAlone=FALSE через список dev.args. Это приводит к сообщению об ошибке formal argument "standAlone" matched by multiple actual arguments. Проблема Knitr # 514 описывает то же сообщение об ошибке, но их решение здесь не работает.

Чтобы воспроизвести, запустите knitr::knit("mwe.Rnw") для следующего файла:

\section*{MWE}
<<echo=FALSE,dev="tikz",dev.args=list(standAlone=FALSE)>>=
plot(x=1:10)
@

Сообщение об ошибке:

Quitting from lines 3-4 (mwe.Rnw) 
Error in tikzDevice::tikz(..., packages = c("\n\\nonstopmode\n", packages,  : 
  formal argument "standAlone" matched by multiple actual arguments

Согласно документации tikzDevice , standAlone=FALSE должно быть по умолчанию в любом случае, не знаю, почему это здесь не применимо.

Любая помощь очень ценится. A , казалось бы, связанный, но менее конкретный c, вопрос был опубликован, но без ответа.

Настройка

> sessionInfo()
R version 3.6.1 (2019-07-05)
Platform: x86_64-apple-darwin15.6.0 (64-bit)
Running under: macOS Catalina 10.15.2

Matrix products: default
BLAS:   /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libBLAS.dylib
LAPACK: /Library/Frameworks/R.framework/Versions/3.6/Resources/lib/libRlapack.dylib

locale:
[1] en_US.UTF-8/en_US.UTF-8/en_US.UTF-8/C/en_US.UTF-8/en_US.UTF-8

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base     

knitr_1.27
tikzDevice_0.12.3

1 Ответ

1 голос
/ 05 февраля 2020

Аргумент standAlone управляется параметром чанка external, поэтому вам нужно:

<<dev="tikz", external=FALSE>>=
...