这是我正在使用的
\begin{table}[h]
\resizebox{\columnwidth}{!}{%
\begin{tabular}{c c c c}
\hline
Dataset&Number of Speakers& Total utterances&Emotions\\
\hline
Berline Emotional Speech Database&10(5M,5F)&535&Angry, Boredom, Disgust, Fear, Happy, Sadness, Neutral\\
\end{tabular}
}
\end{table}
请指导。
在 Mico 回答之后,我明白了。只需要在这三个项目之间添加分隔,而无需为序列号添加任何额外的列。此外,如何增加第一列和最后一列的宽度?实际上,我需要理解整行。\begin{tabularx}{\textwidth}{@{} *{3}{C{0.8}} C{1.6} @{}}
我猜:3 表示前 3 个列的宽度为 0.8,最后一个列的宽度为 1.6?请指导。问候
答案1
评论:我写这个答案是为了回答 OP 的初始疑问。在我发布这个答案后不久,OP 几乎完全改变了疑问。我担心,结果,我的答案对未来的读者来说变得几乎难以理解,因为它继续回答一个现在不再存在的问题。
我建议您采用一个tabularx
环境,其中包含四个居中版本的X
列类型,并将整体宽度设置为\columnwidth
。
table*
或者,您可以使用环境并将环境的宽度设置tabularx
为 ,让表占据两列的宽度\textwidth
。
\documentclass[twocolumn]{elsarticle}
\usepackage{tabularx,ragged2e,booktabs}
\newcolumntype{C}[1]{>{\Centering\hsize=#1\hsize}X}
\begin{document}
\begin{table}[h] % all columns have same width
\begin{tabularx}{\columnwidth}{@{} *{4}{C{1}} @{}}
\toprule
Dataset & Number of speakers & Total utterances & Emotions\\
\midrule
Berlin Emotional Speech Database & 10 (5M,~5F) & 535 & Angry, Boredom, Disgust, Fear, Happy, Sadness, Neutral\\
\bottomrule
\end{tabularx}
\end{table}
\begin{table*}[h] % final column is twice as wide as first three
\begin{tabularx}{\textwidth}{@{} *{3}{C{0.8}} C{1.6} @{}}
\toprule
Dataset & Number of speakers & Total utterances & Emotions\\
\midrule
Berlin Emotional Speech Database & 10 (5M,~5F) & 535 & Angry, Boredom, Disgust, Fear, Happy, Sadness, Neutral\\
\bottomrule
\end{tabularx}
\end{table*}
\end{document}
附录解决原始发帖人的一个后续疑问:
我需要理解这整句话
\begin{tabularx}{\textwidth}{@{} *{3}{C{0.8}} C{1.6} @{}}
让我们从列类型的定义开始C
:
\newcolumntype{C}[1]{>{\Centering\hsize=#1\hsize}X}
这里,X
列类型由包定义tabularx
,\Centering
是包定义的宏ragged2e
。如果存在一个或多个类型的列X
,则它们的宽度计算为残差,即从环境的第一个参数中减去所有其他列的宽度\tabularx
。例如,
\begin{tabularx}{\columnwidth}{@{} *{4}{C{1}} @{}}
表示整体宽度(环境的第一个参数tabularx
)等于\columnwidth
,而*{4}{C{1}}
表示“4 列类型为C
,宽度均等”。 (@{}
粒子用于抑制表格边缘的空白填充。) 的参数C
是相对的宽度,其中“相对”是指等宽 X 型柱的情况。这里要遵循的主要规则是和相对列宽(此处:1+1+1+1=4)必须等于数字X 型柱(此处:4)。
现在我们可以转向第二种tabularx
环境:
\begin{tabularx}{\textwidth}{@{} *{3}{C{0.8}} C{1.6} @{}}
它的整体宽度为\textwidth
(是的两倍多)\columnwidth
,总共由4列组成。前三列是居中的X型列,相对的宽度等于 0.8,第四个也是居中的 X 型柱,相对的宽度为 1.6。请注意 3*0.8+1.6 = 2.4+1.6 = 4 = X 型列的数量。换句话说:最后一列的可用宽度是前三列可用宽度的两倍。”如果要增加第一列和最后一列的相对宽度,还必须减小第二列和第三列的相对宽度。例如,
\begin{tabularx}{\textwidth}{@{} C{0.9} C{0.7} C{0.7} C{1.7} @{}}
从语法上来说是正确的规范。