在对齐环境中引用

在对齐环境中引用

以下 LaTeX 文档:

\documentclass{article}

\usepackage{amsmath}
\begin{document}
\begin{align}
  E=mc^2 \\ \nonumber
  E=mc^2 \label{eq1}
\end{align}

ref \ref{eq1}
\end{document}

不显示参考\ref{eq1}。为什么?

答案1

\label位于同一方程行(而非代码行)\nonumber,因此没有任何方程编号可供标记和稍后引用。您需要将\nonumber(或\label)移到 之前\\

\documentclass{article}

\usepackage{amsmath}
\begin{document}
\begin{align}
  E=mc^2 \nonumber \\
  E=mc^2 \label{eq1}
\end{align}

ref \ref{eq1}
\end{document}

在上述情况下,方程编号放在第二行。如果希望它放在第一行,则将 放在\nonumber之后,\\将 放在\label之前。

答案2

请按如下方式使用:

\begin{align}
  E=mc^2 \nonumber\\ 
  E=mc^2 \label{eq1}
\end{align}

ref \ref{eq1}

\nonumber 双反斜杠

答案3

为了后代:我通过注释掉 cleverref 包解决了这个问题,这在某种程度上干扰了我以通常的非聪明方式引用方程编号的能力(这不是 OP 遇到的问题,但是当我在谷歌上搜索我的症状时,这个帖子是最受欢迎的,所以我在这里留下评论)。

答案4

供进一步参考:我通过将标签放在 \begin{align} 命令旁边(并激活 \usepackage{cleveref})解决了同样的问题:

\begin{align}\label{eq1}
E=mc^2 \nonumber\\
E=mc^2`
\end{align}

文中:“…… equation~\ref{eq1}

相关内容