数组/表格环境在显示模式下直接显示分数并正确间隔?

数组/表格环境在显示模式下直接显示分数并正确间隔?

在我的 Latex 文档中,我通常会包含带有分数的数组和表格,这些分数总是被压缩为内联形式,从而产生令人不快的结果。我知道我可以通过将每个 \frac 切换为 \dfrac 并手动调整行之间的垂直间距来解决这个问题,但我想知道是否有更快、更智能的方法来解决这个问题。我检查了数组包,但似乎没有找到有关此问题的任何信息。

以下是数组压缩分数的 MWE:

\documentclass{article}
\usepackage{amsmath, array}

\begin{document}

\begin{equation*}
\begin{array}{ll}
\frac{\partial T}{\partial \dot{x}}=m \dot{x}\quad \frac{d}{d t}\left(\frac{\partial T}{\partial \dot{x}}\right)=m \ddot{x}\quad \frac{\partial T}{\partial x}=0 \\
\frac{\partial T}{\partial \dot{y}}=m \dot{y}\quad \frac{d}{d t}\left(\frac{\partial T}{\partial \dot{y}}\right)=m \ddot{y}\quad \frac{\partial T}{\partial y}=0 \\
\frac{\partial T}{\partial \dot{z}}=m \dot{z}\quad \frac{d}{d t}\left(\frac{\partial T}{\partial \dot{z}}\right)=m \ddot{z}\quad \frac{\partial T}{\partial z}=0
\end{array}
\end{equation*}

\end{document}

编辑:我正在寻找(不确定它是否存在)一个环境,或者一个在整个环境中有效的“声明”,将每个数学元素切换到 \displastyle,就像常规 \cases 的 \dcases 环境一样。

答案1

如果您将tabularray包中的环境用于数组和表格,则可以将其用于mode=dmath包含数学的单元格。这将使它们以显示样式显示。

一个简短的例子:

\documentclass{article}
\usepackage{tabularray}
\UseTblrLibrary{amsmath}
\begin{document}

\[
\begin{+array}{
  colspec={X},
  cells={mode=dmath}
}
\frac{1}{2}\\
\end{+array}
\]

\begin{tblr}{
  colspec={c},
  cells={mode=dmath}
}
\frac{1}{2}
\end{tblr}

\end{document}

答案2

好吧,如果我理解你的问题很好,你正在寻求生成一个带有数学表达式的表格,我会使用array环境而不是tabular(你不想$在每个单元格中使用,不是吗:D),说到和\dfrac\frac好吧,nccmath包提供了中等大小的分数\mfrac,让我们尝试一下我们所说的,让我们创建一个小型的集成表(我不是想提醒你 calc II 别担心):

\documentclass{article}
\usepackage{amssymb, nccmath}
\usepackage{makecell}

    \begin{document}
        \[
    \setcellgapes{5pt}
    \makegapedcells
    \begin{array}{|c|c|c|}
    \hline
    \makecell[l]{\mathbb{R}_+^*}  & x^n  & \mfrac{x^{n+1}}{n+1}+c \\
    \hline
    \mathbb{R}^*    & \mfrac{1}{x} & \ln \vert x\vert +c \\
    \hline
    \mathbb{R}      & e^{\lambda x} & \mfrac{1}{\lambda}e^x+c \\
    \hline
    \mathbb{R}      & \cos(\omega x)  & \mfrac{1}{\omega}\sin(\omega x)+c \\
    \hline
    \mathbb{R}      & \sin(\omega x)  & \mfrac{1}{\omega} \cos(\omega x)+c \\
    \hline
    \end{array}
        \]
    \end{document}

编译结果如下:

在此处输入图片描述

代码非常简单,为了在单元格内容周围留出更多垂直空间,您可以使用包\setcellgapes中定义的makecell功能,第一个单元格也存在对齐问题,因此添加内容\makecell[l]{}将解决问题。

无论如何,我希望这会对您有所帮助,当所有单元格都包含数学表达式时,这就是我通常制作表格的方法。

相关内容