您能帮我编写一个代码,在乳胶表中的列之间插入数字吗?在下面的表格中,我希望在列 1-2、2-3、3-4、4-5 之间插入“差异”的数字,总共 4 个不同的值(0.736 0.298 0.144 0.461)。
\documentclass[]{article}
\setlength{\pdfpagewidth}{8.5in} \setlength{\pdfpageheight}{11in}
\begin{document}
\begin{table}[t!]
\caption{Moderating effect}
\bigskip
\centering
\begin{tabular}{lccccc} \hline \hline
Numbers& 1 & 2 & 3 & 4 & 5\\
Mean &2.658 &1.923& 1.625& 1.480& 1.020\\
Difference &&&&&\\
\end{tabular}
\end{table}
\end{document}
答案1
大概是像下面这样?
\documentclass[]{article}
\usepackage{calc}
\usepackage{array}
\setlength{\tabcolsep}{3pt}
\newcommand{\mc}[1]{\multicolumn{2}{>{\centering\arraybackslash}p{\widthof{0.000}}}{#1}}
\begin{document}
\begin{table}[t!]
\caption{Moderating effect}
\bigskip
\centering
\begin{tabular}{l*{10}{p{\widthof{00}}}} \hline \hline
Numbers & \mc{1} & \mc{2} & \mc{3} & \mc{4} & \mc{5}\\
Mean & \mc{2.658} & \mc{1.923}& \mc{1.625}& \mc{1.480}& \mc{1.020}\\
Difference & & \mc{0.736} & \mc{0.298} & \mc{0.144} &\mc{0.461}\\
\end{tabular}
\end{table}
\end{document}
或者按照建议規劃也可以使用以下定义\mc
:
\newcommand{\mc}[1]{\multicolumn{2}{wc{\widthof{0.000}}}{#1}}
答案2
添加更多列。我还引入了少量负空间。
\documentclass{article}
\usepackage{booktabs}
\begin{document}
\begin{tabular}{lc*{8}{@{\hspace{-4pt}}c}}
\toprule
Numbers & 1 && 2 && 3 && 4 && 5 \\
\midrule
Mean & 2.658 && 1.923 && 1.625 && 1.480 && 1.020 \\
Difference && 0.736 && 0.298 && 0.144 && 0.461 \\
\bottomrule
\end{tabular}
\end{document}
答案3
不是很清楚你想获得什么,可以这样理解:
\documentclass{article}
\usepackage{booktabs, threeparttable}
\usepackage{siunitx}
\begin{document}
\begin{table}[ht]
\caption{Moderating effect}
\label{tab:diferences}
\centering
\footnotesize
\begin{threeparttable}
\begin{tabular}{l*{9}{S[table-format=1.3]} }
\toprule
Numbers & 1 &{diff} & 2 &{diff} & 3 &{diff} & 4 &{diff} & 5 \\
Mean & 2.658 & 0.736 & 1.923 & 0.298 & 1.625 & 0.144 & 1.480 & 0.461 & 1.020 \\
\bottomrule
\end{tabular}
\begin{tablenotes}\footnotesize
\item fdfdfd
\end{tablenotes}
\end{threeparttable}
\end{table}
\end{document}
或者
\documentclass{article}
\usepackage{booktabs, threeparttable}
\usepackage{siunitx}
\begin{document}
\begin{table}[ht]
\caption{Moderating effect}
\label{tab:diferences}
\centering
\footnotesize
\begin{threeparttable}
\begin{tabular}{l*{9}{S[table-format=1.3]} }
\toprule
Numbers & 1 &{diff} & 2 & {diff} & 3 &{diff} & 4 & {diff} & 5 \\
Mean & 2.658 & & 1.923 & & 1.625 & & 1.480 & & 1.020 \\
\midrule
Differences & & 0.736 & & 0.298 & & 0.144 & & 0.461 & \\
\bottomrule
\end{tabular}
begin{tablenotes}\footnotesize
\item fdfdfd
\end{tablenotes}
\end{threeparttable}
\end{table}
\end{document}
如果不是这种情况,请提供一个草图,显示您希望拥有的内容。
答案4
示例 1 – 嵌套表格
在列之间插入四个数字的最简单方法是将第三行的最后五个单元格跨成多列。然后,在跨行单元格中包含一个新表格,其中包含四个居中列。您可以使用 5+4D
列(来自包列),或者使用 5+4 个普通c
列。只要所有单元格的宽度大致相同,这种方法就非常有效:
\documentclass[]{article}
\usepackage{array, dcolumn, booktabs, caption}
\newcommand{\mc}[1]{\multicolumn{1}{c}{#1}}
\renewcommand*{\arraystretch}{1.05}
\setlength{\extrarowheight}{2pt}
\begin{document}
\begin{table}[bh!]
\caption{Moderating effect -- \emph{using c-columns and nested tabular}}
\centering
\begin{tabular}{@{}l*{5}{c}@{}} \toprule
Numbers & 1 & 2 & 3 & 4 & 5 \\
Mean & 2.658 & 1.923 & 1.625 & 1.480 & 1.020 \\
Difference & \multicolumn{5}{c}{\begin{tabular}{@{}*{4}{c}@{}}
0.736 & 0.298 & 0.144 & 0.461
\end{tabular}%
}\\
\end{tabular}
\end{table}
\begin{table}[bh!]
\centering
\caption{Moderating effect -- \emph{using D-columns and nested tabular}}
\begin{tabular}{@{}l!{\quad}*{5}{D{.}{.}{1,3}}} \toprule
Numbers & \mc{1} & \mc{2} & \mc{3} & \mc{4} & \mc{5} \\
Mean & 2.658 & 1.923 & 1.625 & 1.480 & 1.020 \\
Difference & \multicolumn{5}{c}{\begin{tabular}{*{4}{D{.}{.}{1,3}}}
0.736 & 0.298 & 0.144 & 0.461
\end{tabular}%
}\\
\end{tabular}
\end{table}
\end{document}
示例 2 – 额外列和 D 列
这是@egreg 表格的一个变体,使用D
来自的列列包。这样做的好处是,如果您的行中的数字少于三位小数,或者您在表格中使用了具有比例宽度的数字,则数字仍将以小数点为中心。我添加了两行来演示效果。
此外,我在表格中增加了更多空间,并使用了强制性书签包来绘制规则。
\documentclass{article}
\usepackage{array, dcolumn, booktabs}
\newcommand{\mci}[1]{\multicolumn{1}{c}{#1}}
\renewcommand*{\arraystretch}{1.05}
\setlength{\extrarowheight}{2pt}
\begin{document}
\begin{table}[tbh!]
\caption{Moderating effect}
\bigskip
\centering
\begin{tabular}{@{}l!{\quad}*{9}{@{\hspace{-1pt}}D{.}{.}{1,3}}} \toprule
Numbers & \mci{1} && \mci{2} && \mci{3} && \mci{4} && \mci{5} \\
Mean & 2.658 && 1.923 && 1.625 && 1.480 && 1.020 \\
Difference && 0.736 && 0.298 && 0.144 && 0.461 & \\
\midrule
Mean & 7.68 && 4.94 && 1.62 && 1.48 && 1.02 \\
Difference && 0.75 && 1.99 && 0.94 && 0.46 & \\
\end{tabular}
\end{table}
\end{document}