编辑:我之前写了一些无意义的东西。希望现在能更有意义。
我试图在 foreach 循环中重复绘制一个图,每次迭代时图的域都会发生变化。我尝试将“域”参数中的参数移至“图”,即 domain={\i:2.2*pi+\i}。这无法编译。它似乎不喜欢域中的 \i 变量。有什么想法可以让它工作吗?
\documentclass[tikz]{standalone}
\begin{document}
\begin{tikzpicture}
\foreach \i in {10, 20, 30}
\draw[] plot[samples=100,domain={\i:2.2*pi + \i}] function {sin(x)};
\end{tikzpicture}
\end{document}
请注意,我不想要带有轴的绘图,我需要绘图与其余 tikz 绘图使用相同的单位。因此,我可能错了,但我认为“addplot”不是一个有效的解决方案。
答案1
foreach
用。。。来代替\foreach
。
plot function{<gnuplot formula>}
用于gnuplot
,参见pgfmanual sec 22.6 Plotting a Function Using Gnuplot
。
如果你想用纯 tikz 绘制函数图,请按照pgfmanual sec 22.5 Plotting a Function
\documentclass[tikz]{standalone}
\begin{document}
\begin{tikzpicture}
\foreach \i in {10, 20, 30}
\draw plot[samples=100,domain={\i:(2.2*pi + \i)}] (\x, {sin(\x r)});
\end{tikzpicture}
\end{document}