TikZ, foreach: Fehler bei Listenerstellung (Illegal parameter number in definition)
Ich möchte eine Liste `null ,1.5 ,2.5 ,3.5` erstellen, mit der Ausgabe
`\ifnum\y=0 {null}
\else $\underbrace{\pgfmathresult}_{a}$ % Tut nicht ! ! !`
dafür bekomme ich aber `Illegal parameter number in definition of \ylist. <to be read again> \crcr`
Das Problem scheint explizit das `underbrace` zu sein (andere Mathenotationen scheinen zu gehen, z.B. `\frac` usw.)
Ohne `underbrace` geht z.B.
`\ifnum\y=0 {null}
\else $\pgfmathresult$ % Tut`
*Was läuft hier schief?*
\documentclass[border=5mm, varwidth]{standalone}
\usepackage{tikz, amsmath}
\begin{document}
Tut: $\underbrace{1}_{a}$
Tut nicht mit underbrace:
\newcommand{\ylist}{}% Name reservieren
\newcommand\ausgabe{%
\ifnum\y=0 {null}
\else $\pgfmathresult$ % Tut
%\else $\underbrace{\pgfmathresult}_{a}$ % Tut nicht ! ! !
\fi
}
\let\ylist=\empty% Liste erstellen
\foreach \y in {0,1,2,3}
{
\pgfmathparse{\y+0.5}%
\ifx\empty\ylist{} \xdef\ylist{\ausgabe}%
\else \xdef\ylist{\ylist,\ausgabe}%
\fi
}
Anzeigen: \ylist
\end{document}
____
PS: Ich habe auch [hier][1] gefragt, da ich erst dachte, es handeltz sich um ein Mathenotationsproblem. Es scheint aber eher ein LaTeX-Problem zu sein.
[1]: http://matheplanet.de/matheplanet/nuke/html/viewtopic.php?topic=234260&start=0&lps=1705358#v1705358