我试图绘制一系列线条,其中 x 坐标由几何序列给出,如下例所示:
\begin{tikzpicture}
\foreach \i in {0,...,3}
\pgfmathsetmacro{\result}{7-pow(2,-\i)}
\draw [red, ultra thick] (\result,3) -- (\result,5);
\draw [blue, ultra thick] (\result,2.5) -- (\result,3);
\draw [green, ultra thick] (\result,5) -- (\result,5.5);
\end{tikzpicture}
但是,我似乎不能使用\result
多次。如果我注释掉其中的 2\draw
行,它就可以正常工作,但如果取消注释 2 行或更多\draw
行,我会收到错误:
! Undefined control sequence.
<argument> \result
答案1
缺少的块内部有花括号foreach
:
\begin{tikzpicture}
\foreach \i in {0,...,3} {
\pgfmathsetmacro{\result}{7-pow(2,-\i)}
\draw [red, ultra thick] (\result,3) -- (\result,5);
\draw [blue, ultra thick] (\result,2.5) -- (\result,3);
\draw [green, ultra thick] (\result,5) -- (\result,5.5);
}
\end{tikzpicture}
对我有用。