表格单元格宽度在多行环境中会变化吗?

表格单元格宽度在多行环境中会变化吗?

我正在写论文,不是 LaTeX 专家。我认为它使用模板样式文件,格式位于一个thesis.tex文件下,而每个章节都使用 \input 命令输入。我试图制作一个表格,但我无法让单元格正确对齐,而且表格超出了页面。

需要帮助,我尝试了\usepackage{tabularx}一些\newcolumntype方法,但都无济于事。表格出现的情况是第二行单元格的宽度不同(我希望它们宽度相同),并且我希望单词“kfrag”和“kisom”位于这些列的顶部(理想情况下),对于后面的列,我希望它们位于两列的顶部(即第一列值代表 kisom,第二列代表 kfrag)。如果这些术语必须放在自己的单元格中,我会理解。最后一个问题是表格超出了页面。有什么想法吗?

\begin{table}[H]
\centering
\caption{blah blah blah here's my table caption}
\label{table:table3.2}
\begin{tabular}{|c|c|c|c|c|c|c|c|c|c|c|c|c|c|c|}
\hline
\textbf{N\textsubscript{C}} & \multicolumn{2}{c|}{\textbf{\begin{tabular}[c]    {@{}c@{}}Linear (B0)\\ \\ $\times$10\textsuperscript{6} s\textsuperscript{-1}\\     \\ k\textsubscript{isom}             k\textsubscript{frag}\end{tabular}}} &     \multicolumn{2}{c|}{\textbf{\begin{tabular}[c]{@{}c@{}}Singly Branched (B1)\\ \\                $\times$10\textsuperscript{6} s\textsuperscript{-1}\\ \\ k\textsubscript{isom}                        k\textsubscript{frag}\end{tabular}}} & \multicolumn{2}{c|}    {\textbf{\begin{tabular}[c]{@{}c@{}}Doubly Branched (B2)\\ \\     $\times$10\textsuperscript{6} s\textsuperscript{-1}\\ \\ k\textsubscript{isom}                          k\textsubscript{frag}\end{tabular}}} & \multicolumn{4}{c|}    {\textbf{\begin{tabular}[c]{@{}c@{}}Mono-substituted Cyclic\\ \\     $\times$10\textsuperscript{6} s\textsuperscript{-1}\\ \\ k\textsubscript{isom}                         k\textsubscript{frag}\end{tabular}}} & \multicolumn{4}{c|}    {\textbf{\begin{tabular}[c]{@{}c@{}}Higher Substituted Cyclic\\ \\     $\times$10\textsuperscript{6} s\textsuperscript{-1}\\ \\ k\textsubscript{isom}                              k\textsubscript{frag}\end{tabular}}} \\ \hline
8  & 3.3 & 0.021 & 3.3 & 0.14  & 3.3 & 0.27 & 3.3 & 3.3 & 0.14  & 0.14  &     3.3 & 3.3 & 1.4  & 0.27 \\ \hline
9  & 3.3 & 0.023 & 3.3 & 0.13  & 3.3 & 0.24 & 3.3 & 3.3 & 0.13  & 0.13  &     3.3 & 3.3 & 1.3  & 0.24 \\ \hline
10 & 3.3 & 0.025 & 3.3 & 0.11  & 3.3 & 0.22 & 3.3 & 3.3 & 0.11  & 0.11  &     3.3 & 3.3 & 1.2  & 0.22 \\ \hline
11 & 3.3 & 0.027 & 3.3 & 0.11  & 3.3 & 0.20 & 3.3 & 3.3 & 0.10  & 0.11  & 3.3 & 3.3 & 1.1  & 0.20 \\ \hline
12 & 3.3 & 0.028 & 3.3 & 0.098 & 3.3 & 0.18 & 3.3 & 3.3 & 0.10  & 0.098 & 3.3 & 3.3 & 0.99 & 0.18 \\ \hline
13 & 3.3 & 0.029 & 3.3 & 0.091 & 3.3 & 0.17 & 3.3 & 3.3 & 0.088 & 0.091 & 3.3 & 3.3 & 0.92 & 0.17 \\ \hline
14 & 3.3 & 0.030 & 3.3 & 0.086 & 3.3 & 0.16 & 3.3 & 3.3 & 0.082 & 0.086 & 3.3 & 3.3 & 0.85 & 0.16 \\ \hline
15 & 3.3 & 0.031 & 3.3 & 0.081 & 3.3 & 0.15 & 3.3 & 3.3 & 0.077 & 0.081 & 3.3 & 3.3 & 0.80 & 0.15 \\ \hline
16 & 3.3 & 0.031 & 3.3 & 0.077 & 3.3 & 0.14 & 3.3 & 3.3 & 0.072 & 0.077 & 3.3 & 3.3 & 0.75 & 0.14 \\ \hline
17 & 3.3 & 0.032 & 3.3 & 0.073 & 3.3 & 0.13 & 3.3 & 3.3 & 0.068 & 0.073 & 3.3 & 3.3 & 0.70 & 0.13 \\ \hline
\end{tabular}
\end{table}

答案1

我建议你改变列的类型和头部的形式。我建议你改变一下列的类型和头部的形式。

在此处输入图片描述

对于上表我添加了(您没有提供文档的序言,所以我不知道其中一些包是否已经存在):

  • booktabs用于水平线
  • makecel为了更简单地输入列标题
  • siunitx用于输入带有单位的值并定义新列类型S

为了简化输入并使代码更简洁,我定义了两个新命令:\mcafor\multicolumn{2}{c}{#1}\mcbfor \multicolumn{4}{c}{#1}。我在每个第三行插入\addlinespace。我尝试通过这种方式提高表格的可读性。

代码:

\documentclass[border=3mm,11pt,preview]{standalone}
    \textwidth=170mm
    \usepackage{caption}
    \usepackage{booktabs,makecell}
    \renewcommand\theadfont{\bfseries}
    \setcellgapes[b]{-3pt}
    \newcommand{\mca}[1]{\multicolumn{2}{c}{#1}}
    \newcommand{\mcb}[1]{\multicolumn{4}{c}{#1}}
    \usepackage{siunitx}

\begin{document}
    \begin{table}[htb]
    \centering
    \small
\caption{blah blah blah here's my table caption}
    \label{table:table3.2}
\begin{tabular}{c*{3}{S[table-format=1.1]
                         S[table-format=1.3]}
                    *{2}{S[table-format=1.1]
                         S[table-format=1.1]
                         S[table-format=1.2]
                         S[table-format=1.2]}
                }
    \toprule
\thead{\\ N\textsubscript{C}\\} 
    &   \mca{\thead{Linear\\ 
            (B0)\\ 
            $\times\SI{e6}{\per\second}$\\    
            k\textsubscript{isom} k\textsubscript{frag}}} 
        &   \mca{\thead{Singly\\ 
                Branched (B1)\\ 
               $\times\SI{e6}{\per\second}$\\ 
               k\textsubscript{isom} k\textsubscript{frag}}} 
            &   \mca{\thead{Doubly\\ 
                    Branched (B2)\\
                    $\times\SI{e6}{\per\second}$\\
                    k\textsubscript{isom} k\textsubscript{frag}}}
                &   \mcb{\thead{Mono-substituted\\
                        Cyclic\\
                        $\times\SI{e6}{\per\second}$\\
                        k\textsubscript{isom} k\textsubscript{frag}}}
                    &   \mcb{\thead{Higher Substituted\\
                            Cyclic\\
                            $\times\SI{e6}{\per\second}$\\
                            k\textsubscript{isom} k\textsubscript{frag}}}
        \\  \cmidrule(lr){1-1}
            \cmidrule(lr){2-3}\cmidrule(lr){4-5}\cmidrule(lr){6-7}
            \cmidrule(lr){8-11}\cmidrule(lr){12-15}
8 & 3.3 & 0.021 & 3.3 & 0.14  & 3.3 & 0.27 
    & 3.3 & 3.3 & 0.14  & 0.14  & 3.3 & 3.3 & 1.4  & 0.27   \\
9 & 3.3 & 0.023 & 3.3 & 0.13  & 3.3 & 0.24 
    & 3.3 & 3.3 & 0.13 & 0.13 & 3.3 & 3.3 & 1.3  & 0.24     \\
10 & 3.3 & 0.025 & 3.3 & 0.11  & 3.3 & 0.22 
    & 3.3 & 3.3 & 0.11  & 0.11  &  3.3 & 3.3 & 1.2  & 0.22  \\
    \addlinespace
11 & 3.3 & 0.027 & 3.3 & 0.11  & 3.3 & 0.20 
    & 3.3 & 3.3 & 0.10  & 0.11  & 3.3 & 3.3 & 1.1  & 0.20   \\
12 & 3.3 & 0.028 & 3.3 & 0.098 & 3.3 & 0.18 
    & 3.3 & 3.3 & 0.10  & 0.098 & 3.3 & 3.3 & 0.99 & 0.18   \\
13 & 3.3 & 0.029 & 3.3 & 0.091 & 3.3 & 0.17 
    & 3.3 & 3.3 & 0.088 & 0.091 & 3.3 & 3.3 & 0.92 & 0.17   \\
    \addlinespace
14 & 3.3 & 0.030 & 3.3 & 0.086 & 3.3 & 0.16 
    & 3.3 & 3.3 & 0.082 & 0.086 & 3.3 & 3.3 & 0.85 & 0.16   \\
15 & 3.3 & 0.031 & 3.3 & 0.081 & 3.3 & 0.15 
    & 3.3 & 3.3 & 0.077 & 0.081 & 3.3 & 3.3 & 0.80 & 0.15   \\
16 & 3.3 & 0.031 & 3.3 & 0.077 & 3.3 & 0.14 
    & 3.3 & 3.3 & 0.072 & 0.077 & 3.3 & 3.3 & 0.75 & 0.14   \\
    \addlinespace
17 & 3.3 & 0.032 & 3.3 & 0.073 & 3.3 & 0.13 
    & 3.3 & 3.3 & 0.068 & 0.073 & 3.3 & 3.3 & 0.70 & 0.13   \\
    \bottomrule
\end{tabular}
    \end{table}
\end{document}

如果您不喜欢上面的表格设计,您可以坚持使用垂直规则,然而在这种情况下,您需要用 替换booktabs(\toprule \cmidrule\bottomrule)中的水平规则\hline

编辑:从您的 MWE 来看,k_isom 和 k_frag 的含义/归属不是很清楚。在前三对列中,它们似乎与下面的列对齐,在最后两组四列中(也许这里缺少了什么?)这不清楚。所以我在表格重新设计的第一次迭代中决定保留它们的位置,就像我在您的 MWE 中发现的那样,在第二次迭代中(下图),我将它们的位置绑定在第一个列对(线性、单分支、双分支)中,并在最后四列中的两列中间,正如 Torbjørn T 在他的评论中所建议的那样。列标题的片段代码是:

    \toprule
\thead{\\ \\ N\textsubscript{C}}
    &   \mca{\thead{Linear\\
            (B0)\\
            $\times\SI{e6}{\per\second}$}}
        &   \mca{\thead{Singly\\
                Branched (B1)\\
                $\times\SI{e6}{\per\second}$}}
            &   \mca{\thead{Doubly\\
                    Branched (B2)\\
                    $\times\SI{e6}{\per\second}$}}
                &   \mcb{\thead{Mono-substituted\\
                        Cyclic\\
            $\times\SI{e6}{\per\second}$}}
                    &   \mcb{\thead{Higher Substituted\\
                            Cyclic\\
                            $\times\SI{e6}{\per\second}$}}  \\

    &   $\mathrm{k}_\mathrm{isom}$
        &   $\mathrm{k}_\mathrm{frag}$
            &   $\mathrm{k}_\mathrm{isom}$
                &   $\mathrm{k}_\mathrm{frag}$
                    &   $\mathrm{k}_\mathrm{isom}$
                        &   $\mathrm{k}_\mathrm{frag}$
                            &   \mca{$\mathrm{k}_\mathrm{isom}$}
                                &   \mca{$\mathrm{k}_\mathrm{frag}$}
                                    &   \mca{$\mathrm{k}_\mathrm{isom}$}
                                        &   \mca{$\mathrm{k}_\mathrm{frag}$}
        \\  \cmidrule(lr){1-1}
            \cmidrule(lr){2-3}\cmidrule(lr){4-5}\cmidrule(lr){6-7}
            \cmidrule(lr){8-11}\cmidrule(lr){12-15}

它的瞭望点是:

在此处输入图片描述

笔记:为了使表格适合 170 毫米宽度的文本,我将字体大小减小到small。小保留是大小列分隔大小(默认值为 6pt,\setlength{\tabcolsep}{<desired vale>}您可以将其减小。如果文档文本宽度较小,则是时候考虑将表格设置为横向格式(通过使用sidewaystablelandscape环境)。

相关内容