我在包含使用tikz内联绘制的图表和内联R代码的文档上运行pgfSweave。 R代码被执行并完美呈现,但图表不会出现在最终的PDF中。相反,消息显示在适当的位置,表明:[[图像丢弃由于'/ tikz / external / mode-list和make']]。这个问题有解决方法吗?
谢谢!
答案 0 :(得分:3)
这是在新版本的pgfSweave中使用TikZ外化库的结果。 pgfSweave将添加(除其他外):
\usetikzlibrary{external}
\tikzexternalize[mode=list and make]
这导致你的TikZ图片的全部(由pgfSweave生成或不会被外部化)。 pgfSweave足够智能,如果你没有打开外部化但它无法对你自己的图片做任何事情,它会禁用它生成的图片的外部化。因此,您需要运行生成的makefile以显示图片。
如果您已经使用外部化,那么您自己的TikZ图片应该与所有R图一起外部化,一切都应该没问题。有关如何自定义名称和输出目录的信息,请参阅TikZ手册的外部库部分。
如果您没有使用外部化(我强烈建议您这样做),那么您有两种选择:
将图片外化
make -f <main>.makefile
或者,如果您根本不想使用外部化,那么您可以针对特定图片禁用它
{\tikzexternaldisable
\begin{tikzpicture}
...
\end{tikzpicture}
}
如果您有兴趣,可以使用pgfSweave插图和TikZ手册获取更多信息。