Это связано свопрос, который я задал ранее, в котором я пытался выбрать строки данных на основе значения неотображенной переменной. После ответа на этот вопрос я использую "x expr" и "\thisrow", чтобы определить, какие строки следует включить.
Однако я хотел бы использовать код в цикле \foreach, как показано ниже (который не является полным MWE, поскольку я не включаю данные. Если данные покажутся необходимыми, я добавлю несколько примеров). Я продолжаю получать ошибку
! Undefined control sequence.
\pgfmath@dimen@ ...men@@ #1=0.0pt\relax \pgfmath@
что, судя по вопросам в StackExchange, похоже, происходит по разным причинам, связанным с расширением макроса. Есть идеи, как избежать этой ошибки в этом случае?
\documentclass[12pt]{article}
\usepackage{pgfplots,pgfplotstable}
\pgfplotsset{compat=1.15}
\newcommand{\dir}{n:/pathtodata}
\begin{document}
\newcommand{\outcomestest}{
attn/Attendance,
enrollall_00/Enrollment,
all_mth00pctprof_00/Math Proficiency,
all_rla00pctprof_00/Reading Proficiency}
\foreach \outcome/\label in \outcomestest{
\begin{tikzpicture}
\begin{axis}[ymin=-30,ymax=30,title=\label, xlabel=Year]
\draw [red](axis cs:-4,0) -- (axis cs:2,0);
\addplot table [x expr={\thisrow{bias}==1?nan:\thisrow{period}},y=b]{\dir/main_\outcome_primary.txt};
\addplot table [x expr={\thisrow{bias}==0?nan:\thisrow{period}},y=b]{\dir/main_\outcome_primary.txt};
\end{axis}
\end{tikzpicture}}
\end{document}
Спасибо!