表格中包括分数的方程式的垂直对齐

表格中包括分数的方程式的垂直对齐

我需要将一张桌子塞进一个狭小的空间,但不幸的是,方程式无法垂直对齐/适合它。以下是代码:

\documentclass[12pt]{article}
\usepackage[a4paper, top = 0.8cm, left = 1cm, right = 1cm, bottom = 0.8cm]{geometry}
\usepackage[utf8]{inputenc}
\usepackage{amsmath}
\usepackage{multicol}
\usepackage{array}

\newcolumntype{C}[1]{>{\centering\arraybackslash}m{#1}}

\begin{document}
    \scriptsize
    \tabcolsep=0.05cm
    \setlength\extrarowheight{0.15cm}
    \begin{tabular}{C{1.5cm}|C{1.5cm}|C{1.3cm}|C{4.4cm}|C{1.8cm}}
        Querschnitt & Zug/Druck & Schub & Biegung & Torsion\\\hline
        Spannung & $\sigma_w = \frac{F}{A_w}$ & $\tau_{w}= \frac{F_q}{A_w}$ & $\sigma_{wb} = \frac{M_{bx}}{W_{wbx}}$ &  $\tau_{wt} = \frac{M_t}{W_{wt}}$\\\hline
        Rechteck & \multicolumn{2}{c|}{$A_w = 2a(b+t)$} & $W_{wbx} = \frac{(t+a)(b+a)^3-(t-a)(b-a)^3}{6(b+a)}$ &  $W_{wt} = 2abt$\\\cline{1-5}
        Kreis & \multicolumn{2}{c|}{$A_w = \pi da$} & $W_{wb} = \frac{\pi\left[(d+a)^4 -(d-a)^4\right]}{32(d+a)}$ &  $W_{wt} = 2W_{wb}$\\
    \end{tabular}
\end{document}

现在的样子是:

在此处输入图片描述

如您所见,\extrarowheight解决了方程式\hline在顶部重叠的问题,但不幸的是它们仍然在底部重叠。在我使用此表的文档中,它也恰好在每个单元格中不一致,尽管我使用了与上面添加的相同的代码片段。

不幸的是,m{}使用时没有将单元格居中\extrarowheight,所以我在这里陷入了某种困境,因为我可以将方程式居中或阻止它们重叠(仅在顶部)。\arraystretch具有与相同的效果\extrarowheight

有人能解决这个问题吗?

谢谢!

答案1

您可以插入“底部[印刷]支柱”以在公式中的最低项和其正下方的水平线之间获得更多的垂直空白。

一些额外的建议:

  • 为 的 7 个实例提供一些手动字距调整W_{w...}
  • 由于任何单元格中似乎都不需要换行符,因此您最好使用基本c列类型,而不是居中版本的p列类型。
  • 由于几乎所有单元格的内容都应在数学模式下呈现,因此从一个tabular环境切换到另一个array环境将使您不必输入大量的$标记。

在此处输入图片描述

\documentclass[12pt]{article}
\usepackage[a4paper, vmargin = 0.8cm, hmargin = 1cm]{geometry}
\usepackage[utf8]{inputenc}
\usepackage{array} % for "\extrarowheight" macro

\newcommand\Bstrut{\rule[-1ex]{0pt}{0pt}} % "bottom" strut

\begin{document}
\noindent
    \scriptsize
    \setlength\arraycolsep{1mm}
    \setlength\extrarowheight{1.5mm}
    $\begin{array}{@{} >{$}c<{$} |c|c|c|c @{}} % first col. in text mode
        Querschnitt & $Zug/Druck$ & $Schub$ & $Biegung$ & $Torsion$ \\ 
        \hline
        Spannung & 
          \sigma_w = \frac{F_{\vphantom{q}}}{A_{w\Bstrut}} & 
          \tau_{w}= \frac{F_{\!q}}{A_{w\Bstrut}} & 
          \sigma_{wb} = \frac{M_{bx}}{W_{\!wbx\Bstrut}} &  
          \tau_{wt} = \frac{M_t}{W_{\!wt\Bstrut}} \\ 
        \hline
        Rechteck & 
          \multicolumn{2}{c|}{A_w = 2a(b+t)} & 
          W_{\!wbx} = \frac{(t+a)(b+a)^3-(t-a)(b-a)^3}{6(b+a)\Bstrut} &  
          W_{\!wt\Bstrut} = 2abt \\ 
        \cline{1-5}
        Kreis & 
          \multicolumn{2}{c|}{A_w = \pi da} & 
          W_{\!wb} = \frac{\pi[(d+a)^{4} -(d-a)^4]}{32(d+a)} &  
          W_{\!wt} = 2W_{\!wb} \\
    \end{array}$
\end{document}

答案2

我提出一个“革命性”的解决方案:

\documentclass[12pt]{article}
\usepackage[a4paper, top = 0.8cm, left = 1cm, right = 1cm, bottom = 0.8cm]{geometry}
\usepackage[utf8]{inputenc}
\usepackage{amsmath}
\usepackage{multicol}
\usepackage{booktabs}
\usepackage{array}
\newcommand\Bstrut{\rule[-0.6ex]{0pt}{0pt}} % "bottom" strut

%\newcolumntype{Y}{>{\centering\arraybackslash}X}
\begin{document}
    \scriptsize
    \tabcolsep=0.05cm
    \setlength\extrarowheight{0.15cm}
    \renewcommand{\arraystretch}{1.5}
    \begin{tabular}{l@{\qquad}c@{\qquad}c@{\qquad}c@{\qquad}c}
    \toprule
        Querschnitt & Zug/Druck & Schub & Biegung & Torsion\\
        \midrule
        Spannung & 
        $\sigma_w = \frac{F}{A_w}$ &
        $\tau_{w}= \frac{F_q\Bstrut}{A_w}$ &
         $\sigma_{wb} = \frac{M_{bx}\Bstrut}{W_{wbx}}$ &
           $\tau_{wt} = \frac{M_t\Bstrut}{W_{wt}}$\\
        Rechteck &
         \multicolumn{2}{c}{$A_w = 2a(b+t)$} & 
         $W_{wbx} = \frac{(t+a)(b+a)^3-(t-a)(b-a)^3\Bstrut}{6(b+a)}$ &
           $W_{wt} = 2abt$\\
        Kreis &
         \multicolumn{2}{c}{$A_w = \pi da$} &
         $W_{wb} = \frac{\pi[(d+a)^4 -(d-a)^4]\Bstrut}{32(d+a)}$ &
           $W_{wt} = 2W_{wb}$\\
        \bottomrule
    \end{tabular}
 \end{document}

产量:

在此处输入图片描述

我做了什么

  1. 删除了所有垂直分隔符。我认为它们非常丑陋,阻碍文本

  2. 使用一些常规c类型的列,让 LaTeX 确定特定列的宽度

  3. @{\qquad}在一些过度压缩的列之间插入自定义间距(如果他希望/认为它们更具可读性,可以插入其他空格)

  4. 删除了水平分隔符,从而从方程式中去除了空气,并用规则替换它们booktabs(也称为:添加booktabs

  5. 增加\arraystretchwith\renewcommand{\arraystretch}{1.5}作为增加垂直间距的快速方法,以便为复杂方程提供空间

  6. 将您的改为\left[ ... \right]正常的,以获得正确的间距

编辑

另外,感谢@Mico

  1. 定义了一个新strut举起一些带有下标的分子,略高于分数线,使用名为 的命令\Bstrut。我也在括号略靠近分数线的地方使用了它。

答案3

cellspace单元格内容周围提供更多垂直空间,并subdepth更好地定位下标(索引):

在此处输入图片描述

\documentclass[12pt]{article}
\usepackage[a4paper, vmargin = 0.8cm, hmargin = 1cm]{geometry}
\usepackage[utf8]{inputenc}
\usepackage{cellspace} % for "\extrarowheight" macro
\setlength\cellspacetoplimit{5pt}
\setlength\cellspacebottomlimit{3pt}
\usepackage[low-sup]{subdepth}              % subscript positioning

\begin{document}
\noindent
    \scriptsize
    \setlength\tabcolsep{3pt}
    \begin{tabular}{@{} c|c|c|Sc|c @{}}
        Querschnitt     & Zug/Druck & Schub     & Biegung & Torsion         \\      \hline
        Spannung        & $\sigma_w = \frac{F}{A_{w}}$ & $\tau_{w}
                                    = \frac{F_{\!q}}{A_{w}}$ & $\sigma_{wb} 
                                    = \frac{M_{bx}}{W_{\!wbx}}$ &  $\tau_{wt} 
                                    = \frac{M_t}{W_{\!wt}}$          \\      \hline
        Rechteck        & \multicolumn{2}{c|}{$A_w = 2a(b+t)$} & $W_{\!wbx} 
                                                   = \frac{(t+a)(b+a)^3-(t-a)(b-a)^3}{6(b+a)}$ 
                                &  $W_{\!wt} = 2abt$                 \\      \cline{1-5}
        Kreis           & \multicolumn{2}{c|}{$A_w = \pi da$} 
                                & $W_{\!wb} = \frac{\pi[(d+a)^{4} -(d-a)^4]}{32(d+a)}$ 
                                    &  $W_{\!wt} = 2W_{\!wb}$               \\
    \end{tabular}
\end{document}

附录: 考虑的替代方案米科在下面评论并使用amsmath包为\dfrac{...}{...}

\documentclass[12pt]{article}
\usepackage[a4paper, vmargin = 0.8cm, hmargin = 1cm]{geometry}
\usepackage[utf8]{inputenc}
\usepackage{cellspace} % for "\extrarowheight" macro
\setlength\cellspacetoplimit{5pt}
\setlength\cellspacebottomlimit{3pt}
\usepackage[low-sup]{subdepth}              % subscript positioning
\usepackage{amsmath}

\begin{document}
\noindent
    \scriptsize
    \setlength\tabcolsep{3pt}
    \begin{tabular}{@{} c|c|c|Sc|c @{}}
        Querschnitt &   Zug/Druck & Schub     & Biegung & Torsion               \\      \hline
        Spannung    &   $\sigma_w = \dfrac{F}{A_{w}}$     
                        &   $\tau_{w} = \dfrac{F_{q}}{A_{w}}$    
                            &   $\sigma_{wb} = \dfrac{M_{bx}}{W_{wbx}}$
                                &   $\tau_{wt} = \dfrac{M_t}{W_{wt}}$          \\      \hline
        Rechteck   & \multicolumn{2}{c|}{$A_w = 2a(b+t)$}  
                            &   $W_{wbx} = \dfrac{(t+a)(b+a)^3-(t-a)(b-a)^3}{6(b+a)}$ 
                                &   $W_{wt} = 2abt$                           \\      \cline{1-5}
        Kreis      &   \multicolumn{2}{c|}{$A_w = \pi da$} 
                                &   $W_{wb} = \dfrac{\pi\left[(d+a)^{4} -(d-a)^4\right]}{32(d+a)}$ 
                                    &  $W_{wt} = 2W_{wb}$                   \\
    \end{tabular}
\end{document}

在此处输入图片描述

答案4

这适合正常的文本宽度article;使用\mfrac分数nccmath并不是那么小而难以忍受。

\documentclass[12pt]{article}
\usepackage[utf8]{inputenc}
\usepackage{amsmath}
\usepackage{array,booktabs}
\usepackage{nccmath}

\begin{document}

\begin{table}[htp]
\centering

\footnotesize

\addtolength{\tabcolsep}{-2pt}
\begin{tabular}{@{}lcccc@{}}
\toprule
Querschnitt & Zug/Druck & Schub & Biegung & Torsion\\
\midrule
Spannung &
 $\sigma_w = \mfrac{F}{A_w}$ &
 $\tau_{w}= \mfrac{F_q}{A_w}$ &
 $\sigma_{wb} = \mfrac{M_{bx}}{W_{wbx}}$ &
 $\tau_{wt} = \mfrac{M_t}{W_{wt}}$ \\
\addlinespace
Rechteck &
  \multicolumn{2}{c}{$A_w = 2a(b+t)$} &
  $W_{wbx} = \mfrac{(t+a)(b+a)^3-(t-a)(b-a)^3}{6(b+a)}$ &
  $W_{wt} = 2abt$\\
\addlinespace
Kreis &
  \multicolumn{2}{c}{$A_w = \pi da$} &
  $W_{wb} = \mfrac{\pi\left[(d+a)^4 -(d-a)^4\right]}{32(d+a)}$ &
  $W_{wt} = 2W_{wb}$\\
\bottomrule
\end{tabular}

\end{table}

\end{document}

在此处输入图片描述

相关内容