结合 tikz 图片和 beamer 叠加的最佳方法是什么

结合 tikz 图片和 beamer 叠加的最佳方法是什么

我目前正在准备一个会议演示,并且正在使用非常好的tikzpgfplots包与 结合使用beamer

为了强调图中的某些内容,我使用了beamer覆盖系统。

当我使用一些小的tikzpictures 时,所有内容都会使用一些命令集成到文档中\input。但是,对于较大的pgfplots数字(您会看到我来了),我的编译时间相当长。

我当前的解决方案是使用多个图片分别预编译我的大图片,并使用覆盖选项tikzpicture调用一些图片。\includegraphics

Beamer 代码

\documentclass{beamer}
\begin{document}
\begin{frame}
\includegraphics<1>[page=1]{image}
\includegraphics<2>[page=2]{image}
\includegraphics<3->[page=3]{image}
\end{frame}
\end{document}

使用哪里image构建

\documentclass[tikz]{standalone}
\begin{document}
\begin{tikzpicture}
    \begin{axis}[]
    % Plot to be displayed on overlay 1
        \addplot[domain=0:1,samples=100]{x}; 
    \end{axis}
\end{tikzpicture}
\begin{tikzpicture}
    \begin{axis}[]
        % Plots to be displayed on overlay 2
        \addplot[domain=0:1,samples=100]{x}; 
        \addplot[domain=0:1,samples=100]{x^2}; 
    \end{axis}
\end{tikzpicture}
% And so on
\end{document}

我知道有一些外部化的方法可以做到这一点,但我想知道社区对此事的看法。

如果这是双份的话,请提前致歉。

standalone beamer与选项相关的编辑

使用standalonebeamer选项似乎会产生有趣的结果(感谢 samcarter)。但是,输出的大小为框架大小beamer,而不是适合 pgfplots 轴。请参阅下面的 MWE。

\documentclass[beamer]{standalone}
\usepackage{pgfplots}
\begin{document}
\begin{standaloneframe}
\begin{tikzpicture}
\begin{axis}[]
\only<1>{\addplot[domain=0:1, samples=100]{x};}
\addplot[domain=0:1, samples=100]{x^2};
\addplot[domain=0:1, samples=100]{x^3};
\only<4>{\addplot[domain=0:1, samples=100]{x^4}};
\end{axis}
\end{tikzpicture}
\end{standaloneframe}
\end{document}

答案1

tikzpreview选项传递给standalone

\documentclass[beamer,tikz,preview]{standalone}
\usepackage{pgfplots}
\begin{document}
\begin{standaloneframe}
\begin{tikzpicture}
  \begin{axis}[]
  \only<1>{\addplot[domain=0:1, samples=100]{x};}
  \addplot[domain=0:1, samples=100]{x^2};
  \addplot[domain=0:1, samples=100]{x^3};
  \only<4>{\addplot[domain=0:1, samples=100]{x^4}};
  \end{axis}
\end{tikzpicture}
\end{standaloneframe}
\end{document}

编译后会得到pdflatex一个裁剪精美的 4 页 PDF。为了方便嵌入到框架中beamer,我建议采用以下模式:

\documentclass{beamer}
\usepackage{tikz}

\begin{document}
\begin{frame}
  \foreach \ov/\pg in {1/1,2/2,3-/3}{ 
    \includegraphics<\ov>[page=\pg]{image.pdf}
  } 
  \onslide<4>{Still the last figure!}
\end{frame}
\end{document}

相关内容