3 列数学对齐

3 列数学对齐

有没有我可以遵循的标准来对齐三列数学?LaTex 是做什么的?

如果没有标准,我该如何很好地格式化 3 列数学?例如

-1               \leq \sin(t)              \leq 1  
\int_0^x (-1) dt \leq \int_0^x \cos(t)  dt \leq \int_0^x (1) dt
-x               \leq \cos(x)-1            \leq x

我希望各列在等式上方对齐。左列向右对齐,右列向左对齐。中间列居中。

请注意,我已尝试使用“alignat”,但无法正确调整间距,因为它坚持将所有内容右/左/右/左对齐...,并且列之间的距离太远。

还尝试了“tabular”,但列太宽,并且它没有根据我的 documentclass 语句中的“fleqn,reqno”缩进。

答案1

对于居中的中间列,使用常规align*并将中间列内容设置在类似大小的框中(使用eqparbox\eqmakebox):

在此处输入图片描述

\documentclass{article}

\usepackage{amsmath,eqparbox}

\newcommand{\dt}{\,\mathrm{d}t}
\newcommand{\dint}{\displaystyle\int}

\begin{document}

\begin{align*}
                    -1 &\leq \eqmakebox[box]{$       \sin(t)       $} \leq 1                 \\
    \dint_0^x (-1) \dt &\leq \eqmakebox[box]{$\dint_0^x \cos(t) \dt$} \leq \dint_0^x (1) \dt \\
                    -x &\leq \eqmakebox[box]{$     \cos(x) - 1     $} \leq x
\end{align*}  

\[
  \renewcommand{\arraystretch}{1.2}
  \setlength{\arraycolsep}{0pt}
  \begin{array}{ r c l }
                    -1 \leq {} &         \sin(t)       & {} \leq 1                 \\
    \dint_0^x (-1) \dt \leq {} & \dint_0^x \cos(t) \dt & {} \leq \dint_0^x (1) \dt \\
                    -x \leq {} &       \cos(x) - 1     & {} \leq x
  \end{array}
\]

\[
  \renewcommand{\arraystretch}{1.2}
  \setlength{\arraycolsep}{0pt}
  \begin{array}{ r }
    -1 \leq {} \\ \dint_0^x (-1) \dt \leq {} \\ -x \leq {}
  \end{array}
  \begin{array}{ c }
    \sin(t) \\ \dint_0^x \cos(t) \dt \\ \cos(x) - 1
  \end{array}
  \begin{array}{ l }
    {} \leq 1 \\ {} \leq \dint_0^x (1) \dt \\ {} \leq x
  \end{array}
\]

\end{document}

第二个和第三个选项提供了使用arrays 堆叠内容的附加选项,但与amsmath显示。

答案2

原则上,您不需要其中任何一个。

\documentclass{article}
\begin{document}
\[\begin{array}{rcccl}
-1                & \leq  & \sin(t)              & \leq & 1  \\
 \displaystyle\int\limits_0^x (-1)\, \mathrm{d}t  & \displaystyle\leq &  
 \displaystyle\int\limits_0^x \cos(t)\,  \mathrm{d}t &  \leq & \displaystyle\int\limits_0^x (1)\, \mathrm{d}t
 \\
-x              & \leq & \cos(x)-1            & \leq  & x
\end{array}
\] 
\end{document}

在此处输入图片描述

当然,你可能会觉得使用\displaystyle很糟糕,在这种情况下考虑

\documentclass{article}
\usepackage{mathtools}
\begin{document}
\begin{alignat*}{3}
-1                & \leq &  \sin(t) &  \leq  1  \\
 \int\limits_0^x (-1)\, \mathrm{d}t   & \leq  &
 \int\limits_0^x \cos(t)\,  \mathrm{d}t &  \leq  \int\limits_0^x (1)\, \mathrm{d}t
 \\
-x              & \leq  & \cos(x)-1            &  \leq   x
\end{alignat*}
\end{document}

得出

在此处输入图片描述

当然,这里中间一列没有居中。

答案3

你也可以考虑排列某些物品之内三个列中的每一列,例如,-1-1-x第一列。这可以使用\phantom命令来完成。

在此处输入图片描述

您可以将此策略应用于任何其他解决方案,或使用\lefteqn附加\phantom命令来对齐 s 的第二列,\leq如下面的代码所示。

\documentclass{article}
\usepackage{amsmath}

\begin{document}

\begin{align*}
\phantom{\int_0^x (}{-1}\phantom{)\,\mathrm{d}t} & %
    \leq \lefteqn{\phantom{\int_0^x} \sin(t)\phantom{\, \mathrm{d}t}}\phantom{\int_0^x 1-\cos(x)}%
    \leq \phantom{\int_0^x (}1 \\
\int_0^x (-1)\,\mathrm{d}t &%
    \leq \lefteqn{\int_0^x \sin(t)\, \mathrm{d}t}\phantom{\int_0^x 1-\cos(x)}%
    \leq \int_0^x (1)\,\mathrm{d}t \\
\phantom{\int_0^x (}{-x}\phantom{)\,\mathrm{d}t} &%
    \leq \phantom{\int_0^x}\,1-\cos(x)%
    \leq \phantom{\int_0^x (}x \\
\end{align*}

\end{document}

最后,大家一致认为,\,应在被积函数和微分之间插入一个细空格(),并且(也许共识较少)d微分中的应采用罗马(直立)字体排版。

答案4

这是我能做的最好的事情:

标头

\usepackage{array}                  % Provides for a more flexible array and tabular environment
\usepackage{booktabs}               % For fancy stuff in arrays and tables. Like the following column definitions
\newcolumntype{L}{>{\begin{math}}l<{\end{math}}}%
\newcolumntype{C}{>{\begin{math}}c<{\end{math}}}%
\newcolumntype{R}{>{\begin{math}}r<{\end{math}}}%
\usepackage{multicol,multirow}

\parindent0pt
\setlength{\parskip}{0.5\baselineskip}
\everymath{\displaystyle}

然后身体里的表格

{
\setlength{\tabcolsep}{01pt} % Default value: 6pt     %Need to find how I set this as a universal constant
\renewcommand{\arraystretch}{2.3} % Default value: 1  %Need to find how I set this for each row
\begin{tabular}{RCCCL}
  \sin(t)                 &\leq& t           \\
  \int_0^x \sin(t) \dif t &\leq& \int_0^x t \dif t \\
  -\cos(x) + \cos(0)      &\leq& \frac{x^2}{2} - 0 \\
  -\cos(x) + 1            &\leq& \frac{x^2}{2} \\
  1-\frac{x^2}{2}         &\leq& \cos(x)
\end{tabular}
}

相关内容