4

我在包含使用 tikz 内联绘制的图表和内联 R 代码的文档上运行 pgfSweave。R 代码已执行并完美呈现,但图表未出现在最终 PDF 中。相反,消息会显示在适当的位置,说明:[[IMAGE DISCARDED DUE TO '/tikz/external/mode-list and make']]。这个问题有解决方法吗?

谢谢!

4

1 回答 1

3

这是在新版本的 pgfSweave 中使用 TikZ 外部化库的结果。pgfSweave 将添加(除其他外):

\usetikzlibrary{external}
\tikzexternalize[mode=list and make]

这会导致您所有的 TikZ 图片(是否由 pgfSweave 生成​​)都将被外部化。pgfSweave 足够聪明,可以禁用它生成的图片的外部化,如果你没有打开外部化,但它不能对你自己的图片做任何事情。因此,您需要运行生成的 makefile 以显示图片。

如果您已经在使用外部化,那么您自己的 TikZ 图片应该与您的所有 R 图一起外部化,一切都应该没问题。请参阅 TikZ 手册的外部库部分了解如何自定义名称和输出目录。

如果您不使用外部化(我强烈建议您这样做),那么您有两种选择:

  1. 外化你的图片

    make -f <main>.makefile
    
  2. 或者,如果您根本不想使用外部化,那么您可以为特定图片禁用它

    {\tikzexternaldisable
    \begin{tikzpicture}
    ...
    \end{tikzpicture}
    }
    

如果您有兴趣,pgfSweave 小插图和 TikZ 手册有更多信息。

于 2011-05-10T18:44:33.557 回答