文档中多次出现的子图的引用顺序不正确

文档中多次出现的子图的引用顺序不正确

我有两个由子图组成的图 A 和 B。这两个图中都出现了一些子图。当我尝试引用子图时,引用的顺序错误。例如:

\begin{document}

Figures \ref{fig:sub1}-\ref{fig:sub3} ...

\begin{figure}[H]
  \centering
  \begin{subfigure}{.5\textwidth}
    \includegraphics[width=\linewidth]{sub1.png}
    \caption{Sub 1.}
    \label{fig:sub1}
  \end{subfigure}
\begin{subfigure}{.5\textwidth}
    \includegraphics[width=\linewidth]{sub2.png}
    \caption{Sub 2.}
    \label{fig:sub2}
  \end{subfigure}
\begin{subfigure}{.5\textwidth}
    \includegraphics[width=\linewidth]{sub3.png}
    \caption{Sub 3.}
    \label{fig:sub3}
  \end{subfigure}
\end{figure}

\begin{figure}[H]
  \begin{subfigure}{.5\textwidth}
    \includegraphics[width=\linewidth]{sub4.png}
    \caption{Sub 4.}
    \label{fig:sub4}
  \end{subfigure}
\begin{subfigure}{.5\textwidth}
    \includegraphics[width=\linewidth]{sub1.png}  % <- appears second time
    \caption{Sub 1.}
    \label{fig:sub1}
  \end{subfigure}
\begin{subfigure}{.5\textwidth}
    \includegraphics[width=\linewidth]{sub5.png}
    \caption{Sub 5.}
    \label{fig:sub5}
  \end{subfigure}
\end{figure}

\end{document}

生成“图 2b-1c...”

我怎样才能使 sub1 的引用保持为图 1a,而不是 2b?

答案1

LaTeX 没有直接的方法“知道”编号为“1a”的图表会在编号为“2b”的subfigure图表中重复出现。subfigure

当然,使用非唯一指令不是一个好主意\label。LaTeX 发出警告信息

LaTeX Warning: There were multiply-defined labels

当它遇到多重定义的标签时。

为了让读者清楚地了解你希望在两个不同的subfigure环境(例如,标记为fig:sub1fig:sub1_rep)中交叉引用同一张图,你可能需要这样写

Figures \ref{fig:sub1} (also \ref{fig:sub1_rep}) and \ref{fig:sub3}, \dots

在文档正文中。并且,为了让读者更加清楚地知道图表是故意重复的,您可以写一些类似于\caption{Sub 1, repeated.}图表第二次出现的内容。

在此处输入图片描述

\documentclass[demo]{article} % omit 'demo' option in real document
\usepackage{graphicx,subcaption}
\begin{document}

\noindent
Figures \ref{fig:sub1} (also \ref{fig:sub1_rep}) and \ref{fig:sub3}, \dots

\begin{figure}[h]
  \begin{subfigure}{.3\textwidth}
    \includegraphics[width=\linewidth]{sub1.png}
    \caption{Sub 1.}
    \label{fig:sub1}
  \end{subfigure}\hfill
  \begin{subfigure}{.3\textwidth}
    \includegraphics[width=\linewidth]{sub2.png}
    \caption{Sub 2.}
    \label{fig:sub2}
  \end{subfigure}\hfill
  \begin{subfigure}{.3\textwidth}
    \includegraphics[width=\linewidth]{sub3.png}
    \caption{Sub 3.}
    \label{fig:sub3}
  \end{subfigure}
\caption{A group of three subfigures}
\end{figure}

\begin{figure}[h!]
  \begin{subfigure}{.3\textwidth}
    \includegraphics[width=\linewidth]{sub4.png}
    \caption{Sub 4.}
    \label{fig:sub4}
  \end{subfigure}\hfill
  \begin{subfigure}{.3\textwidth}
    \includegraphics[width=\linewidth]{sub1.png} % <- appears second time
    \caption{Sub 1, repeated.}
    \label{fig:sub1_rep}
  \end{subfigure}\hfill
  \begin{subfigure}{.3\textwidth}
    \includegraphics[width=\linewidth]{sub1.png}
    \caption{Sub 5.}
    \label{fig:sub5}
  \end{subfigure}
\caption{Another group of three subfigures}
\end{figure}

\end{document}

相关内容