![pgfplots + animate + foreach:从一个图开始](https://linux22.com/image/290740/pgfplots%20%2B%20animate%20%2B%20foreach%EF%BC%9A%E4%BB%8E%E4%B8%80%E4%B8%AA%E5%9B%BE%E5%BC%80%E5%A7%8B.png)
我想生成一个动画,其中行数逐行增加。它工作得很好,但起始图像总是二線。
\documentclass{article}
\usepackage{pgfplots}
\pgfplotsset{compat=newest}
\usepackage{animate}
\begin{document}
\begin{animateinline}[controls]{10}
\multiframe{5}{iIndex=0+1}{
\begin{tikzpicture}
\begin{axis}[
ymin=0,
ymax=100,
xmin=0,
xmax=10,
]
\foreach \i in {0,1,...,\iIndex} {
\addplot[
mark=none,
domain=0:10,
] {3*x+\i+5};
}
\end{axis}
\end{tikzpicture}
}
\end{animateinline}
\end{document}
我希望它以一行开始而不是两行,如图所示:
这动画PDF可以在这里找到几天:
答案1
改为使用\foreach \i in {0,...,\iIndex}
。 中的 0+1multiframe
将增量设置为 1。
代码
\documentclass{article}
\usepackage{pgfplots}
\pgfplotsset{compat=newest}
\usepackage{animate}
\begin{document}
\begin{animateinline}[controls]{10}
\multiframe{5}{iIndex=0+1}{
\begin{tikzpicture}
\begin{axis}[
ymin=0,
ymax=100,
xmin=0,
xmax=10,
]
\foreach \i in {0,...,\iIndex} {
\addplot[
mark=none,
domain=0:10,
] {3*x+\i+5};
}
\end{axis}
\end{tikzpicture}
}
\end{animateinline}
\end{document}