我有一张超出比例的图表,但我想将它用于我正在准备的课程。要使用它,我只需要更改轴上的数字。我想让每个 x 都乘以 2。我试过了,但没有用。
\foreach \x in {-6,-3,...,6}
\draw (\x,-6.25) node{2*\x};
图像中轴上只出现了“2*x”。有人知道如何在节点内部操作吗?
答案1
这里有几个选项:
使原始数字正确并在坐标中进行计算。这是可行的,因为坐标已经经过表达式求值器。
\foreach \x in {-12,-6,...,12} \draw (\x/2,-6.25) node{\(\x\)};
在可选选项中做一个额外的计算
\foreach
。\foreach[evaluate=\x as \nodeLabel using \x*2] \x in {-6,-3,...,6} \draw (\x,-6.25) node{\(\nodeLabel\)};
将节点内容放入数学解析器。由于此操作不会自动完成,因此必须明确执行。
\foreach \x in {-6,-3,...,6} \draw (\x,-6.25) node{\pgfmathparse{\x*2}\(\pgfmathresult\)};
哪个最好取决于你。在这种情况下,它们几乎都一样。如果你继续在其他地方使用重新计算的数字,那么中间那个每次迭代只计算一次,这可能会节省几纳秒。