使用 floatrow 时,来自 pgfplots 的外部 PDF 包含多页

使用 floatrow 时,来自 pgfplots 的外部 PDF 包含多页

使用 pgfplots 和外部库进行绘图会根据需要为每个绘图创建单个 PDF。但每个 PDF 都包含几页,每页都显示相同的绘图。有时有三页,有时更多。我不明白是什么触发了这么多页。

由于只有第一页包含在主文档中,因此我得到了正确的结果。但我猜编译速度会慢很多,因为所有相同的页面都必须单独创建。当我比较有和没有外部库的编译时,我发现有外部库的编译时间要长得多。

您的表现是否也一样?可以采取什么措施?

编辑:最小示例。看来 floatrow 包是这里的问题所在... 在这种情况下,会生成两个文件。如果取消注释 \tikzsetnextfilename{testplot},则只会得到一个文件,但其中包含两页。

\documentclass{standalone}

\usepackage{floatrow}

\usepackage{pgfplots}
\usepgfplotslibrary{external}
\tikzexternalize[mode=list and make]
\tikzset{external/system call={lualatex \tikzexternalcheckshellescape -halt-on-error -interaction=batchmode -jobname "\image" "\texsource"}}


\begin{document}

Testplot:

%\tikzsetnextfilename{testplot}
\ffigbox
    {}
    {\begin{tikzpicture}
    \begin{axis}[]
    \addplot {sin(x)};
    \end{axis}
    \end{tikzpicture}}
\end{document}

编辑2:日志文件也报告绘图完成了两次......

Opening 'test.figlist' for writing.
Opening 'test.makefile' for writing.
\tikzexternal@outmakefile=\write5
Writing 'test-figure0' to 'test.figlist'.
Writing 'test-figure0' to 'test.makefile'.
Writing 'test-figure1' to 'test.figlist'.
Writing 'test-figure1' to 'test.makefile'.

编辑 3:当包含一个简单的 PDF 图像而不是 tikzpicture 时,日志还会显示两个调用......

<test-figure0.pdf, id=4, 248.42511pt x 179.13223pt>
File: test-figure0.pdf Graphic file (type pdf)
 <use test-figure0.pdf>
Package pdftex.def Info: test-figure0.pdf used on input line 25.
(pdftex.def)             Requested size: 248.42448pt x 179.13177pt.
File: test-figure0.pdf Graphic file (type pdf)
<use test-figure0.pdf>
Package pdftex.def Info: test-figure0.pdf used on input line 25.
(pdftex.def)             Requested size: 248.42448pt x 179.13177pt.

相关内容