多对齐方程式右

多对齐方程式右

我正在尝试获得我的三个方程的以下对齐

在此处输入图片描述

我能做的最好的事情就是

\documentclass[12pt]{article}
\usepackage{amsmath}
\usepackage{graphicx}
\usepackage{hyperref}
\usepackage[latin1]{inputenc}

\begin{document}
\maketitle

\begin{align*}
  r(\theta)    & = & (x_0 + a \cos x) i & + & (y_0 + a \sin x) j & \\
  r'(\theta)   & = &      - a \sin x  i & + &       (a \cos x) j & \\
  F(r(\theta)) & = &                0 i & + & (x_0 + a \sin x) j &
\end{align*}
\end{document}

然而,这在等式中留下了大量的空白。

答案1

在此处输入图片描述

\documentclass[12pt]{article}
\usepackage{amsmath}
\usepackage{graphicx}
\usepackage{hyperref}
\usepackage[latin1]{inputenc}% really? that is very 20th century, why not utf8?

\begin{document}


\begin{alignat*}{3}
  r(\theta)    ={}&&  (x_0 + a \cos x) i  + {}&& (y_0 + a \sin x) j \\
  r'(\theta)   ={}&&      - a \sin x  i   + {}&&       (a \cos x) j \\
  F(r(\theta)) ={}&&                0 i   + {}&& (x_0 + a \sin x) j
\end{alignat*}
\end{document}

alignat是 的变体align,可避免添加额外空间。您需要&&,因此您只使用右对齐的列,而不是左对齐的列,然后您需要在 之后{}保留正确的间距,因为它们在 之前而不是之后。=+&

答案2

您也可以使用来array实现这一点。

\documentclass[12pt]{article}
\usepackage{amsmath}
\begin{document}

\newcommand{\ii}{\mathbf{\,i}}
\newcommand{\jj}{\mathbf{\,j}}

\[
\begin{array}{r @{{}={}} r @{} r}
  \mathbf{r}(\theta)             & (x_0 + a \cos x) \ii +{} & (y_0 + a \sin x) \jj  \\
  \mathbf{r}'(\theta)            &      - a \sin x  \ii +{} &       (a \cos x) \jj  \\
  \mathbf{F}(\mathbf{r}(\theta)) &                0 \ii +{} & (x_0 + a \sin x) \jj 
\end{array}
\]

\end{document}

在此处输入图片描述

相关内容