[\forcol]
例如,当我从命令中删除可选参数\addplot
或将其更改为 时red
,以下 MWE 运行良好。虽然我希望曲线具有与列表中定义不同的颜色{1/black,2/red,3/green,4/blue,5/orange}
,所以我尝试了以下方法,但随后它抛出了错误
“!未定义控制序列。\end{axis}”
\documentclass{article}
\usepackage{xcolor}
\usepackage{pgfplots}
\begin{document}
\begin{tikzpicture}
\begin{axis}
\foreach \foridx/\forcol in {1/black,2/red,3/green,4/blue,5/orange}{
\addplot[\forcol]{x^\foridx};
}
\end{axis}
\end{tikzpicture}
\end{document}
我犯了什么错误?我希望有此功能来设置一个用于绘制许多数据文件的命令。
答案1
您可以尝试一些\expandafter...
语句来扩展\foreach
循环。\foreach
在我看来,循环可能相当棘手,这是由于\forcol
宏的定义方式所致pgffor
。
\documentclass{article}
\usepackage{xcolor}
\usepackage{pgfplots}
\begin{document}
\begin{tikzpicture}
\begin{axis}
\pgfplotsforeachungrouped \foridx/\forcol in {1/black,2/red,3/green,4/blue,5/orange}{
\expandafter\addplot\expandafter[\forcol]{x^\foridx};
}
\end{axis}
\end{tikzpicture}
\end{document}