如何让表格的各列宽度相等?

如何让表格的各列宽度相等?

我希望能够准确地重现该表: 图。1 这是我的Tex:

\documentclass{article}
\usepackage{amsmath}
\usepackage{makecell}
\usepackage{siunitx}
\begin{document}
    
\begin{tabular}{ccccc}
    \cline{1-3}
    &  \makecell*{y \\ e}  & \makecell{$\kappa$ \\ eV $\si{\angstrom}^{-2}$ }\\ \hline 
    $\rm{Na}^+$   &  -0.5056            &  63.014 \\
    $\rm{Cl}^-$   &  -2.5005             &  25.724   \\
    \hline 
    1 & 2 &3  &4   &  5 \\ \hline 
    
\end{tabular}   
    
        
\end{document}

如图 为什么最后一行的宽度不相等?我应该如何修改?

答案1

像这样?

在此处输入图片描述

编辑:

  • 您的 MWE 中不存在表格下部的内容,因此在下面的示例中仅考虑表格上部的数据。
  • 屏幕截图显示第二列和第三列中的数字比其他列中的数字多得多。要使所有列的宽度相同,必须将c使用列中单元格的“自然”宽度的列类型替换为固定宽度。
  • 对于您的测试表,我建议您使用w列类型,它允许用户指定固定的目标宽度。在下面的代码中,我将4em所有 5 列的宽度设置为;您显然可以自由调整此数字以满足您的排版需求。附言:加宽列后,您可能需要留意表格是否仍适合文本块。文本块的宽度由参数给出\textwidth
  • 使用 arraymakecellsiunitxmhchem
\documentclass{article}
\usepackage{array}    % for 'w' column type
\usepackage{makecell} % for '\makecell' macro
\usepackage[per-mode = symbol]{siunitx} % for '\unit' macro
\usepackage[version=4]{mhchem} % for '\ce' macro

\begin{document}

\begin{tabular}{ w{c}{4em} *{4}{>{$}w{c}{4em}<{$}} }
    \cline{1-3}
    & \makecell{y \\ e}  
    & \makecell{\kappa \\ \unit{eV\per\square\angstrom}}\\
    \hline
    \ce{Na^+}   &  -0.5056  &  63.014   &   &   \\
    \ce{Cl^-}   &  -2.5005  &  25.724   &   &   \\
    \hline
    1           & 2         &  3        & 4 & 5 \\ 
    \hline
\end{tabular}

\end{document}

附录:

  • 结合两个表 以及tabularraybooktabssiunitxmathtoolsmhchem
\documentclass{article}
\usepackage{tabularray}
\UseTblrLibrary{booktabs, siunitx}
\sisetup{per-mode = symbol,
         group-minimum-digits=4}
\usepackage{mathtools}
\DeclarePairedDelimiter\abs{\lvert}{\rvert}
\usepackage[version=4]{mhchem}

\begin{document}

\begin{tblr}{width = 0.8\linewidth, 
             colspec={@{} X[l]
                      X[c, si={table-format=-1.4}]
                      X[c, si={table-format= 2.3}]
                      X X
                      @{} },
             row{1} ={guard},
             row{2-Z} = {rowsep=1pt}
             }
    \cmidrule[\heavyrulewidth]{1-3}
    & {$y$ \\ $\abs{e}$}
    & {$\kappa$ \\ (\unit{eV\per\square\angstrom}})\\
    \cmidrule{1-3}
\ce{Na^+}   &  -0.5056  &  63.014   &   &   \\
\ce{Cl^-}   &  -2.5005  &  25.724   &   &   \\
\end{tblr}

\begin{tblr}{width = 0.8\linewidth, 
             colspec={@{} X[l]
                          X[c, si={table-format=6.0}]
                          X[c, si={table-format=1.5}]
                          X[c, si={table-format=2.2}]
                          X[c, si={table-format=3.1}]
                      @{} },
             row{1} ={guard},
             row{2-Z} = {rowsep=1pt}
             }
    \toprule
    & {A\\ (\unit{\electronvolt})}
                & {$\rho$\\ (\unit{\angstrom})}
                            & {C\\  (\unit{\angstrom\electronvolt^6})}
                                    & {D\\  (\unit{\angstrom\electronvolt^8})}
                                            \\
    \midrule
\ce{Na - Na} 
    &    587    & 0.23768   &  1.05 &   0.5 \\
\ce{Na - Cl}
    & 145134    & 0.23768   &  6.99 &   8.7 \\
\ce{Cl - Cl}
    & 406587    & 0.23768   & 72.40 & 145.4 \\
    \bottomrule
\end{tblr}
\end{document}

在此处输入图片描述

相关内容