如何给方程式添加行号(amsmath)

如何给方程式添加行号(amsmath)

我有几个方程跨越多行,使用\begin{equation} \begin{aligned}为每个方程赋予一个方程编号。例如:

\begin{equation}
\begin{aligned}
\forall &a. \\
  &a \in A \rightarrow \\
  &\ a \in B
\end{aligned}
\end{equation}

为了帮助解释,我想补充一下线给方程式编号。当然,每个方程式都会从 1 重新开始编号。对于上面的例子,我希望它总是有从 1 到 3 的行号。

在网站上搜索只会找到与方程编号相关的结果,这不是我想要的;另一类结果是关于一个lineno似乎对整个文档进行编号的包,并且它与 amsmath 存在一些问题。

有没有办法自动给行编号?


感谢@mickep 提供的例子说明了我想要实现的目标:

带线号的方程

答案1

subequations正如@Vincent在评论中提到的,数学(2a)包非常适合您的用例。特别是,标有、等的子方程式可以使用标准 LaTeX - (或)机制(2b)轻松进行交叉引用。\label\ref\eqref

在此处输入图片描述

\documentclass{article} % or some other suitable document class
\usepackage{amsmath} % for aligned, subequations, and align environments
\setlength\textwidth{8cm} % just for this example
\begin{document}

\begin{equation}
\begin{aligned}
 a &= b+c+d \\
   &= e+f+g
\end{aligned}
\end{equation}

\begin{subequations}
\begin{align}
 a &= b+c+d \label{eq:abcd}\\
   &= e+f+g
\end{align}
\end{subequations}

As pointed out in equation \eqref{eq:abcd}, \dots

\end{document}

附录回答 OP 的后续问题。

但是我还能保留方程编号作为一个整体吗?例如,对于第二个方程,它可以同时具有方程编号 2 和每行的子方程编号列表吗?

要交叉引用整个子方程组,请\label在 后立即添加一条指令\begin{subsequations}。例如,如果您在上面的示例中添加了\label{eq:group2}\begin{subsequations}则可以通过 创建对整个方程组的交叉引用\eqref{eq:group2}

我真的认为没有必要,甚至不建议(2)为整个方程组创建明确的数字标签。如果你真的担心你的读者无法弄清楚方程 2a、2b 等是一组共享数字的方程的成员2,那么你的读者在基本阅读理解方面就会陷入严重的困境——他们很可能永远不会阅读你的论文……

我可以使用数字而不是字母作为“数字”行吗(例如,在示例中我可以使用“2-1”而不是“2a”)

是的。如果您希望此更改适用于subequations文档中的所有环境,建议您添加说明

\usepackage{xpatch}  % for \xpatchcmd macro
\xpatchcmd{\subequations}{\alph{equation}}{-\arabic{equation}}{}{}

在序言中,加载中amsmath

相关内容