1

我正在尝试将 .Rnw 文档转换为乳胶(要包含在另一个 .tex 文档中)。所有绘图均使用该tikz设备生成,但每个绘图都是独立文档。我的目标是让它们在tikzpicture环境中。

解决方案尝试

根据有关 plots 的 knitr 文档,应该可以standAlone=FALSE通过dev.args-list 传递。这会产生错误消息formal argument "standAlone" matched by multiple actual arguments。Knitr issue #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无论如何都应该是默认值,不知道为什么这里不适用。

任何帮助是极大的赞赏。一个看似相关但不太具体的问题已发布但没有答案。

设置

> 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
4

1 回答 1

1

该参数standAlone由 chunk 选项控制external,因此您需要的是:

<<dev="tikz", external=FALSE>>=
于 2020-02-04T21:31:29.820 回答