以下 LaTeX 文档:
\begin{align*}
p{(A,RM,OL,O,LC)} &=p(A)\;p(RM\mid A)\;p(OL\mid A,RM)\;p(O \mid A, RM, OL) \\ &
\; \; \; \;p(LC\mid A, RM, OL,O) \label{eq:JPExample}
\end{align*}
不显示参考\ref{eq:JPExample}
。为什么?
答案1
您的对齐方式不正确。以下是我的做法:
\documentclass{article}
\usepackage{amsmath}
\begin{document}
\begin{align}
p(A,RM,OL,O,LC)
={}& p(A) \cdot p(RM \mid A) \cdot p(OL \mid A,RM) \nonumber\\
& \cdot p(O \mid A,RM,OL) \cdot p(LC \mid A,RM,OL,O). \label{eq:JPExample}
\end{align}
Here is equation~\eqref{eq:JPExample}.
\end{document}
或者
\documentclass{article}
\usepackage{amsmath}
\begin{document}
\begin{equation}
\begin{split}
p(A,RM,OL,O,LC)
={}& p(A) \cdot p(RM \mid A) \cdot p(OL \mid A,RM) \\
& \cdot p(O \mid A,RM,OL) \cdot p(LC \mid A,RM,OL,O). \label{eq:JPExample}
\end{split}
\end{equation}
Here is equation~\eqref{eq:JPExample}.
\end{document}
注意两种方法之间标签位置的差异。
此外,我
- 删除了多余的括号
p{(...)}
, - 在每个因数之间加上乘号,
- 将其中一个因素从第一行移至后者。
答案2
您只能引用也带有数字的方程式。由于您使用的是环境align*
,您的方程式没有数字,因此无法引用。在align
环境中(没有*
),它们会获得一个数字并且可以引用。
由于您有多行,并且可能只希望其中一行有编号并被引用,因此您可以\nonumber
使用amsmath
包以防止这些行获得数字。
下面的例子中,第一个方程被分配了编号“(1)”,可以引用。第二个方程没有被分配任何编号,因此无法引用。
\documentclass[a4paper,11pt]{report}
\usepackage{amsmath} %align environment and equations withount unmbering
\begin{document}
\begin{align}
E & = m \cdot c^2
\label{eq:einstein}
\\
c^2 & = a^2 + b^2
\nonumber
\end{align}
This is a reference to equation \eqref{eq:einstein}.
%This is a reference to equation (1).
\end{document}
注意:\eqref{...}
与使用该命令的“方程式 1”相比,该命令会生成括号中的引用“方程式 (1)” \ref{...}
。