循环时显示数组中的图形标题时出现问题

循环时显示数组中的图形标题时出现问题

我正在尝试使用以下代码生成多个图形。但是,我遇到了问题\caption{\questions(\plotNum)}。我收到的错误是Incomplete \iffalse; all text was ignored after line 129.。有人能指出问题到底是什么以及如何修复它吗?也许有更好的方法来完成我想做的事情?

\documentclass{article}
\usepackage{arrayjob}
\usepackage{pgffor}
\usepackage{tikz}

\begin{document}
\newarray\questions
\readarray{questions}{
    Question1&Question2&Question3
}

\foreach \plotNum in {0,...,2} {
    \begin{figure}[h!]
        \begin{minipage}{0.4\textwidth}
        \centering
        \includegraphics[scale=0.4]{Plots/pie_all_data_\plotNum.png}
        \caption{\questions(\plotNum)} % PROBLEM HERE
        \label{pie_all_data_\plotNum}
        \end{minipage}
    \end{figure}
}
\end{document}

答案1

问题源于将\caption内容写入外部文件(可能用于图片列表/LoF)的事实,应谨慎处理。如果您不打算创建 LoF,则只需\caption使用空的可选参数进行调用:

在此处输入图片描述

\documentclass[draft]{article}
\usepackage{arrayjob,graphicx,pgffor}

\begin{document}
\newarray\questions
\readarray{questions}{%
  Question01&Question02&Question03&%
  Question04&Question05&Question06&%
  Question07&Question08&Question09&%
  Question10&Question11&Question12
}

\foreach \plotNum in {1,...,12} {
  \begin{figure}[h!t]
    \centering
    \includegraphics[scale=0.4]{Plots/pie_all_data_\plotNum.png}
    \caption[]{\questions(\plotNum)}
  \end{figure}
}
\end{document}

请注意,我\plotNum1到 循环12,因为数组索引不是从 开始的0。我还在里面添加了足够的条目\questions以匹配您的循环周期。

相关内容