alignat 環境で水平方向の cdot を揃える

alignat 環境で水平方向の cdot を揃える

私はalignat環境を使用して、実質的に同じことを記述しているが数量が異なる一連の方程式を揃えています。そのため、共通するものをスキップして に置き換えることにしました\cdotsが、中央に揃えることができないようです。

ここに画像の説明を入力してください

ドットを中央に配置するアイデアはありますか?

サンプルコードは以下のとおりです

\documentclass{article}
\usepackage{amsmath}

\begin{document}

\begin{alignat*}{4}
  &\sigma(E) &=& \vec{\sigma(E)} = \big\{\sigma(E_1), \sigma(E_2), \cdots, \sigma(E_n)\big\} &=&  \big\{\sigma_1, \sigma_2, \cdots, \sigma_n\big\}&\\
 &C(E) &=&{\cdots}&=&  \big\{C_1, C_2, \cdots, C_n\big\}&\\
\end{alignat*}

\end{document}

答え1

\omit現在の書式設定から抜け出すには、 を使って低レベルの TeX に切り替えることができます。

サンプル出力

\documentclass{article}

\usepackage{amsmath}

\begin{document}

\begin{alignat*}{2}
  \sigma(E) &={}& \vec{\sigma(E)}
  = \bigl\{\sigma(E_1), \sigma(E_2), \dots, \sigma(E_n)\bigr\}
  &= \bigl\{\sigma_1, \sigma_2, \dots, \sigma_n\bigr\}\\
  C(E) &={}&\omit\hfill$\cdots$\hfill
  &= \bigl\{C_1, C_2, \dots, C_n\bigr\}
\end{alignat*}

\end{document}

{}また、等号のスペースを正しく取るためにグループを追加し、\bigl...\bigrの代わりにを使用していることに注意してください\big。また、カンマの間では\dots(または\dotsc) のみを使用する必要があります。

ここでは、アンパサンドの使用に注意してください&。 では、最初のグループは右揃え、2 番目のグループは左揃えなど、alignat暗黙的に配置されます。rlrl...

答え2

パッケージによるソリューションeqparbox。2 つの配置列で十分であることに注意してください。

\documentclass{article}
\usepackage{amsmath}
\usepackage{eqparbox}
\newcommand{\eqmathbox}[2][M]{\eqmakebox[#1]{$\displaystyle#2$}}

\begin{document}

\begin{alignat*}{2}
  \sigma(E) &= {}& \eqmathbox{\vec{\sigma(E)} = \big\{\sigma(E_1), \sigma(E_2), \cdots, \sigma(E_n)\big\}} &= \big\{\sigma_1, \sigma_2, \cdots, \sigma_n\big\}\\
 C(E) &= {}& \eqmathbox{\cdots\cdots}&= \big\{C_1, C_2, \cdots, C_n\big\}\\
\end{alignat*}

\end{document} 

ここに画像の説明を入力してください

答え3

array方程式を整列させるために作られたものではありませんが、この場合、いくつかのトリック(@{}および{}最初/最後の等号の前後に適切な間隔が必要な場合)を使用すると便利かもしれません。

\documentclass{article}
\usepackage{amsmath}
\usepackage{array}
\begin{document}
\[
\begin{array}{r@{}c@{}l}
  \sigma(E) ={} & \vec{\sigma(E)} = \big\{\sigma(E_1), \sigma(E_2), \cdots, \sigma(E_n)\big\} & {}= \big\{\sigma_1, \sigma_2, \cdots, \sigma_n\big\}\\
 C(E) ={} &\cdots& {}=  \big\{C_1, C_2, \cdots, C_n\big\}\\
\end{array}
\]
\end{document}

ここに画像の説明を入力してください

関連情報