表错误导致运行时间过长

表错误导致运行时间过长

我尝试编写一个表格,但是我找不到它的问题所在,因为它阻止了我的文件编译:

\documentclass[10pt,a4paper,twoside]{report}
\usepackage[version=4]{mhchem}
\usepackage{makecell, multirow, tabularx}

\begin{document}


\begin{table}[ht]
\centering
 \begin{tabular}{|c|c|c|c|c|c|} 
 \hline
 Material & $\Xi$ & 
 \makecell{ $\Sigma_{a}$ \\ [1/m] }
 & \makecell{ Macroscopic Slowing \\ Down Power(MSDP)} 
 & Moderating Ratio(MR) & 
 \makecell{ Elastic scattering mean free path \\ MFP\textsubscript{ela} [cm] } \\[0.5ex] 
 \hline
 \ce{H2O}(l)      & 0.927 & 2.226 & 1.425 & 62 & 0.66\\
 \hline
 \ce{D2O}(l)      & 0.510 & 0.001 & 0.177 & 4830 & 2.77\\
 \hline
 \ce{Be}          & 0.207 & 0.094 & 0.154 & 126  & 1.29\\
 \hline
 Graphite(\ce{C}) & 0.158 & 0.030 & 0.083 & 216  & 2.50\\
 \hline
 \end{tabular}
 \caption{Moderating properties of materials}
\label{table:3}
\end{table} 

\end{document}

答案1

正如 @Mico 的精彩回答 (+1) 中所述,问题的根源在于在 \makecell命令中使用方括号。在这里使用时,它们应该用花括号括起来。

使用tabularray软件包booktabssiunitx库(加载同名的包),您的表格可以写成如下形式:

\documentclass{article}
\usepackage[version=4]{mhchem}
\usepackage{tabularray}
\UseTblrLibrary{booktabs,siunitx}

\begin{document}
    \begin{table}[ht]
    \centering
\begin{talltblr}[
caption = {Moderating properties of materials},
  label = {table:3},
note{a} = {MSDP: Macroscopic Slowing Down Power},
note{b} = {MR: Moderating Ratio},
note{c} = {MFP: Mean Free Path}
                ]{
        width=0.9\linewidth,
        colspec = {@{} l *{3}{X[c, si={table-format=1.3}]}
                       X[c, si={table-format=4.0}]
                       X[3, c, si={table-format=1.2}]
                   @{}}
                 }
    \toprule
Material
    & $\Xi$
        & {{{$\Sigma_{a}$ \\ {[\unit{1\per\meter}]}}}}
            & {{{MSDP}}}\TblrNote{a}
                & {{{MR}}}\TblrNote{b}
                   & {{{Elastic scattering 
                      MFP\textsubscript{ela}\TblrNote{c}\quad 
                      {[\unit{\centi\meter}]} }}}  \\
    \midrule
\ce{H2O} [\unit{\liter}] & 0.927 & 2.226 & 1.425 &   62 & 0.66\\
\ce{D2O} [\unit{\liter}] & 0.510 & 0.001 & 0.177 & 4830 & 2.77\\
\ce{Be}                  & 0.207 & 0.094 & 0.154 &  126 & 1.29\\
Graphite (\ce{C})        & 0.158 & 0.030 & 0.083 &  216 & 2.50\\
    \bottomrule
\end{talltblr}
    \end{table}
\end{document}

编辑: 最后一栏添加了注释。

在此处输入图片描述

答案2

我认为问题的直接根源是

\makecell{ $\Sigma_{a}$ \\ [1/m] }

默认情况下,LaTeX 将方括号中的内容解释\\为指令后面的补充垂直间距指令;要使此操作有效,方括号中的实体必须计算为长度,例如1ex。这显然不是此处的正确解释。要告知 LaTeX 这一点,您需要将上面的表达式更改为

\makecell{ $\Sigma_{a}$ \\ {} [1/m] }  % note the '{}' particle

除了修复此问题之外,您还应该对布局进行一些更改,以确保表格内容实际上适合文本块的宽度。具体来说,我认为您需要允许在第 4 列到第 6 列中换行。在下面的第一个表中,我使用了tabularx环境和居中版本的X列类型来实现此目标。

为了进一步简化表格的外观,我建议您在标题单元格中直接使用首字母缩略词 MSDP、MR 和 MFP,而不附带定义。(希望您在读者看到表格时已经向他们介绍了这些首字母缩略词。)这将使表格的宽度大大缩小。请参阅下面的第二个表格以获取说明。

在此处输入图片描述

\documentclass{article}
\usepackage{mhchem,makecell}
\usepackage{tabularx,ragged2e,booktabs,siunitx}
\newcolumntype{C}{>{\Centering\hspace{0pt}}X}
\newcommand\mC[1]{\multicolumn{1}{C}{#1}}
\begin{document}

\begin{table}[ht]
\centering
\setlength\tabcolsep{4pt} % default: 6pt
 \begin{tabularx}{\textwidth}{@{} l cc C S[table-format=4.0] C @{}} 
 \toprule
 Material 
 & $\Xi$ 
 & \makecell[t]{$\Sigma_{a}$ \\ {} [\unit{1\per\meter}]}
 & Macroscopic Slowing Down Power (MSDP)
 & \mC{Moderating Ratio (MR)}
 & Elastic scattering mean free path MFP\textsubscript{ela} [\unit{\centi\meter}]  \\
 \midrule
 \ce{H2O} [\unit{\liter}] & 0.927 & 2.226 & 1.425 &   62 & 0.66\\
 \ce{D2O} [\unit{\liter}] & 0.510 & 0.001 & 0.177 & 4830 & 2.77\\
 \ce{Be}                  & 0.207 & 0.094 & 0.154 &  126 & 1.29\\
 Graphite (\ce{C})        & 0.158 & 0.030 & 0.083 &  216 & 2.50\\
 \bottomrule
 \end{tabularx}
 \caption{Moderating properties of materials}
\label{table:3}

 \bigskip\bigskip
 \setlength\tabcolsep{6pt} % return to default

 \begin{tabular}{@{} l ccc S[table-format=4.0] c @{}} 
 \toprule
 Material 
 & $\Xi$ 
 & \makecell[t]{$\Sigma_{a}$ \\ {} [\unit{1\per\meter}]}
 & MSDP
 & {MR}
 & \makecell[t]{Elastic scattering \\ MFP\textsubscript{ela} [\unit{\centi\meter}]}  \\
 \midrule
 \ce{H2O} [\unit{\liter}] & 0.927 & 2.226 & 1.425 &   62 & 0.66\\
 \ce{D2O} [\unit{\liter}] & 0.510 & 0.001 & 0.177 & 4830 & 2.77\\
 \ce{Be}                  & 0.207 & 0.094 & 0.154 &  126 & 1.29\\
 Graphite (\ce{C})        & 0.158 & 0.030 & 0.083 &  216 & 2.50\\
 \bottomrule
 \end{tabular}
 \caption{Moderating properties of materials, 2nd version}
\label{table:3a}
\end{table} 

\end{document}

相关内容