如何在显示数学模式下右对齐方程的一部分

如何在显示数学模式下右对齐方程的一部分

这仅一行。老实说,我以为这会非常简单,但到目前为止,我已经尝试过:

  • \hfill
  • \hspace*{\fill}
  • \null\hfill
  • \hspace*{0pt}\hfill
  • \mbox{}\hfill

在下面这一行中:

$$g(x) = \underset{c \in \mathcal{Y}}{\operatorname{arg max}} \mathcal{P}(f(x + \epsilon)=c), \hfill \epsilon \sim \mathcal{N}(0, \sigma^2I)$$

所有这些都会导致:

在此处输入图片描述

如果我只是使用内联数学模式并换行,则会导致主方程左对齐。我希望主方程居中对齐,噪声右对齐。

答案1

在此处输入图片描述

我会使用最后的实现,因为没有理由将侧面条件推到右边距。

无论如何,$$应该绝不可用于 LaTeXdocument环境。另请注意,\operatorname*而不是\underset

\documentclass{article}
\usepackage{amsmath}

% these two packages just for the example
\usepackage{lipsum}
\usepackage{showframe}

\begin{document}

\lipsum[1][1-4]
\[
\hspace{1000pt minus 1fill}
g(x) = \operatorname*{arg\,max}_{c \in \mathcal{Y}}\mathcal{P}(f(x + \epsilon)=c), 
\hspace{1000pt minus 1fill}
\epsilon \sim \mathcal{N}(0, \sigma^2I)
\]
\lipsum[2][1-4]
\[
\hspace{1000pt minus 1fill}
g(x) = \operatorname*{arg\,max}_{c \in \mathcal{Y}}\mathcal{P}(f(x + \epsilon)=c), 
\hspace{1000pt minus 1fill}
\makebox[0pt][r]{$\displaystyle \epsilon \sim \mathcal{N}(0, \sigma^2I)$}
\]
\lipsum[3][1-4]
\[
g(x) = \operatorname*{arg\,max}_{c \in \mathcal{Y}}\mathcal{P}(f(x + \epsilon)=c), 
\qquad \epsilon \sim \mathcal{N}(0, \sigma^2I)
\]
\lipsum[4][1-4]

\end{document}

相关内容