tikz知识

tikz手册英文

foreach命令

使用格式
\foreach [] in

options可选参数讲解:

  • var=可以替换位置参数,例如\foreach \x/\y in {0/red,1/green}替换为\foreach [var=\x,var=\y] in {0/red,1/green}
  • evaluate= as using
    • evaluate=用于将列表项求值后输出到替代原样输出到,例如\foreach \x [evaluate=\x] in {2^0,2^…,2^3}{$\x$, }得到$1,2,4,8$而不是$2^0,2^1,2^2,2^3$
    • as 将evaluate得到的值或者得到的值存到中而不是中,例如\foreach \x [evaluate=\x as \xeval] in {2^0,2^…,2^3}{$\x=\xeval$, }得到$2^0=1.0,2^1=2.0,2^2=4.0,2^3=8.0$
    • using 求值时不用显式的将公式用到列表中每个项而将公式放到中,中必须包含至少一个,例如\foreach \x [evaluate=\x as \xeval using 2^\x] in {0,1,…,3}{$\x=\xeval$, }
  • remember= as (initially )将上一次迭代中的item值即上一次迭代存储到中的值在本次迭代中存储到中;如果变量被求值evaluate则求值结果保留在中,第一次迭代时, 例如\foreach \x [remember=\x as \lastx (initially A)] in {B,…,D}{\lastx$\to$\x, }结果是$A\to B,B\to C,C\to D$
  • count= from 保持列表中项的次序,次序存在中,次序初始索引是

使用风格

my style/.style={draw=red,fill=red!20}
定义一个style叫作my style,风格内容是描边red,填充red!20。/.style意思是键名my style不在这里使用,只是定义键名和值

键值参数化

\begin{tikzpicture}[outline/.style={draw=#1,thick,fill=#1!50}]
\node [outline=red] at (0,1) {red};
\node [outline=blue] at (0,0) {blue};
\end{tikzpicture}
定义键名outline时使用#num,当使用outline时输入的实参参数值按次序替换#num形参。