我知道如何对齐多个等式,但如果我还想在等式上方添加文字,我该怎么做?例如:
等号不再对齐,这让我很烦。这是我的 LaTeX:
$$
\begin{align}
p(\textbf{x} \mid \mathcal{D}, \alpha)
&= \int p(\textbf{x} \mid \boldsymbol{\theta}) p(\boldsymbol{\theta} \mid \mathcal{D}, \alpha) \text{d} \boldsymbol{\theta}
\\
&\stackrel{\text{Eq 4}}{=} \int p(\textbf{x} \mid \boldsymbol{\theta}) p(\boldsymbol{\theta} \mid \alpha') \text{d} \boldsymbol{\theta}
\\
&= p(\textbf{x} \mid \alpha'). \tag{5}
\end{align}
$$
有针对这个的解决方法吗?
答案1
在这里我使用\mathclap
以确保堆栈占用零水平空间。
另外,将\textbf
实例更改为\mathbf
(感谢,Mico)。
最后,去掉$$
分隔符。
\documentclass{article}
\usepackage{mathtools}
\begin{document}
\begin{align}
p(\mathbf{x} \mid \mathcal{D}, \alpha)
&= \int p(\mathbf{x} \mid \boldsymbol{\theta}) p(\boldsymbol{\theta} \mid \mathcal{D}, \alpha) \text{d} \boldsymbol{\theta}
\\
&\stackrel{\mathclap{\text{Eq 4}}}{=} \int p(\mathbf{x} \mid \boldsymbol{\theta}) p(\boldsymbol{\theta} \mid \alpha') \text{d} \boldsymbol{\theta}
\\
&= p(\mathbf{x} \mid \alpha'). \tag{5}
\end{align}
\end{document}
答案2
一个简单的方法\makebox[0pt]{...}
就能解决问题。
不相关:不要align
在里面嵌套$$ ... $$
——并且不要使用纯 TeX 构造,ˆˆ ... $$
因为它会在 LaTeX 中产生不正确的间距。
\documentclass{article}
\usepackage{amsmath}
\begin{document}
\begin{align}
p(\textbf{x} \mid \mathcal{D}, \alpha)
&= \int p(\textbf{x} \mid \boldsymbol{\theta}) p(\boldsymbol{\theta} \mid \mathcal{D}, \alpha) \text{d} \boldsymbol{\theta}
\\
&\stackrel{\text{\makebox[0pt]{Eq 4}}}{=} \int p(\textbf{x} \mid \boldsymbol{\theta}) p(\boldsymbol{\theta} \mid \alpha') \text{d} \boldsymbol{\theta}
\\
&= p(\textbf{x} \mid \alpha'). \tag{5}
\end{align}
\end{document}