我正在使用以下代码制作乳胶表。不幸的是,当我编译时,最后一列的垂直线丢失了。
\documentclass{article}
\begin{document}
\begin{table}[b!]
\centering
%\footnotesize
\caption{\label{tab:experiments_summary_1}
Summary of fiber experiments. }
\begin{tabular} {|c||c|c|c|*{1}{r@{\,}c@{\,}l|}}
\hline
Type & A
& B
& C
& \multicolumn{3}{c|}{D} \\
\hline \hline
1 & 100 & 284198 & 1940876 & $7.6 \times 10^{-6}$ \\
\hline
2 & 100 & 265212 & 1882294 & $1.8 \times 10^{-6}$ \\
\hline
3 & 200 & 200194 & 1472625 & $7.1 \times 10^{-4}$ \\
\hline
4 & 200 & 40477 & 504115 & $4.6 \times 10^{-4}$ \\
\hline
5 & 300 & 36846 & 314694 & $7.2 \times 10^{-3}$ \\
\hline
6 & 315 & 359881 & 3852568 & $1.5 \times 10^{-3}$ \\
\hline
7 & 420 & 123026 & 1039820 & $5.8 \times 10^{-3}$ \\
\hline
\end{tabular}
\end{table}
\end{document}
答案1
您的 D 列实际上实现为三列r@{\,}c@{\,}l
(不清楚为什么?)
您只将数学数据放在这些列的第一列中,因此没有 | 最后两列未被使用,因此永远不会达到最后的 |。
\documentclass{article}
\begin{document}
\begin{table}[b!]
\centering
%\footnotesize
\caption{\label{tab:experiments_summary_1}
Summary of fiber experiments. }
\begin{tabular} {|c||c|c|c|c|}
\hline
Type & A
& B
& C
& D \\
\hline \hline
1 & 100 & 284198 & 1940876 & $7.6 \times 10^{-6}$ \\
\hline
2 & 100 & 265212 & 1882294 & $1.8 \times 10^{-6}$ \\
\hline
3 & 200 & 200194 & 1472625 & $7.1 \times 10^{-4}$ \\
\hline
4 & 200 & 40477 & 504115 & $4.6 \times 10^{-4}$ \\
\hline
5 & 300 & 36846 & 314694 & $7.2 \times 10^{-3}$ \\
\hline
6 & 315 & 359881 & 3852568 & $1.5 \times 10^{-3}$ \\
\hline
7 & 420 & 123026 & 1039820 & $5.8 \times 10^{-3}$ \\
\hline
\end{tabular}
\end{table}
\end{document}
答案2
大部分都是题外的建议(因为你的问题已经由@DavidCarlise 的回答解决了,+1):
我将S
在除第一列之外的所有列中使用列类型,省略垂直线并用于表格(相对较新的) tabularray
包。
\documentclass{article}
\usepackage[skip=1ex]{caption}
\usepackage{tabularray}
\UseTblrLibrary{siunitx}
\ExplSyntaxOn
\NewChildSelector{eachtwo}
{
\int_step_inline:nnnn {2} {2} { \l_tblr_childs_total_tl }
{ \clist_put_right:Nn \l_tblr_childs_clist {##1} }
}
\ExplSyntaxOff
\begin{document}
\begin{table}[bt]
\centering
\caption{Summary of fiber experiments. }
\label{tab:experiments_summary_1}
\begin{tblr}{hline{1,Z}=1pt, hline{2}=0.6pt,
colspec={c Q[c, si={table-format=3}]
Q[c, si={table-format=6.0}]
Q[c, si={table-format=7.0}]
Q[c, si={table-format=1.1e2}]},
row{2-Z} = {rowsep=0pt},
row{eachtwo} = {abovesep=5pt},
}
Type & {{{A}}}
& {{{B}}}
& {{{C}}}
& {{{D}}} \\
% table body
1 & 100 & 284198 & 1940876 & 7.6e-6 \\
2 & 100 & 265212 & 1882294 & 1.8e-6 \\
3 & 200 & 200194 & 1472625 & 7.1e-4 \\
4 & 200 & 40477 & 504115 & 4.6e-4 \\
5 & 300 & 36846 & 314694 & 7.2e-3 \\
6 & 315 & 359881 & 3852568 & 1.5e-3 \\
7 & 420 & 123026 & 1039820 & 5.8e-3 \\
\end{tblr}
\end{table}
\end{document}
使用规则表单booktabs
包和使用标准tabular
表可以得到类似的结果:
\documentclass{article}
\usepackage[skip=1ex]{caption}
\usepackage{siunitx}
\usepackage{booktabs}
\begin{document}
\begin{table}[bt]
\centering
\caption{Summary of fiber experiments. }
\label{tab:experiments_summary_1}
\begin{tabular}{c S[table-format=3]
S[table-format=6.0]
S[table-format=7.0]
S[table-format=1.1e2]
}
\toprule
Type & {A}
& {B}
& {C}
& {D} \\
\midrule
% table body
1 & 100 & 284198 & 1940876 & 7.6e-6 \\
2 & 100 & 265212 & 1882294 & 1.8e-6 \\
\addlinespace
3 & 200 & 200194 & 1472625 & 7.1e-4 \\
4 & 200 & 40477 & 504115 & 4.6e-4 \\
\addlinespace
5 & 300 & 36846 & 314694 & 7.2e-3 \\
6 & 315 & 359881 & 3852568 & 1.5e-3 \\
\addlinespace
7 & 420 & 123026 & 1039820 & 5.8e-3 \\
\bottomrule
\end{tabular}
\end{table}
\end{document}
两个例子的结果几乎相同: