一行中有多个方程,并有适当的引用

一行中有多个方程,并有适当的引用

我正在寻找一种方法,让多个方程式在同一行,并能够引用它们。我知道可以使用 为多行完成此操作eqnarray,但我希望将其放在一行中。

我有以下解决方法,但不太好:

\begin{equation}
\label{eqs}
\mbox{\textbf{(i)}}   \ \ x>y  \ \ \ \ \ \  
\mbox{\textbf{(ii)}}  \ \ y>z  \ \ \ \ \ \ 
\mbox{\textbf{(iii)}} \ \ z>a  \ \ \ \ \ \ 
\end{equation}

equation reference (\ref{eqs}\textbf{(i)}), (\ref{eqs}\textbf{(ii)}), (\ref{eqs}\textbf{(iii)}).

这看起来像:

在此处输入图片描述

有没有适当的方法来实现这一点?

答案1

以下是使用enumitem隐藏列表的一种方法mbox

示例输出

\documentclass{article}

\usepackage{enumitem}

\newlist{eqlist}{enumerate*}{1}
\setlist[eqlist]{itemjoin=\quad,mode=unboxed,label=(\roman*),ref=\theequation(\roman*)}

\begin{document}

\setcounter{equation}{17}

\begin{equation}
  \label{eq:three}
  \mbox{%
  \begin{eqlist}
  \item\label{eqi:th-one} \( x>y\),
  \item\label{eqi:th-two} \( y>z\),
  \item\label{eqi:th-three} \( \displaystyle z>\int_{0}^{1} e^{x^{2}}dx \).
  \end{eqlist}}
\end{equation}
Referencing (\ref{eqi:th-two}).

\end{document}

但是,这不适用于amsmath(因为有多个标签命令)并且不允许多行。解决这两个问题的变体如下,基于minipage

第二个示例

\documentclass{article}

\usepackage{enumitem,amsmath}

\newlist{eqlist}{enumerate*}{1}
\makeatletter
\setlist[eqlist]{itemjoin=\quad,mode=unboxed,label=(\roman*),
  ref=\theequation(\roman*),before={\let\label\ltx@label}}
\makeatother

\begin{document}

\setcounter{equation}{17}

\begin{equation}
  \label{eq:three}
  \begin{minipage}{.8\linewidth}\centering
  \begin{eqlist}
  \item\label{eqi:th-one} \( x>y\),
  \item\label{eqi:th-two} \( y>z\),
  \item\label{eqi:th-three} \( \displaystyle z>\int_{0}^{1}
    e^{x^{2}}dx \),\endgraf
    \item\label{eqi:th-four} \( \displaystyle a = \int_{U} \frac{\cos
      x}{\sin y}\,dx\,dy\).
  \end{eqlist}
\end{minipage}
\end{equation}
Referencing \eqref{eqi:th-two} and \eqref{eqi:th-four}.

\end{document}

相关内容