我在表格格式方面遇到问题,如下面的截图所示,表格的一部分缺失
用于创建表的代码如下
\begin{table}[h]
\centering
\begin{tabular}{|c|c|c|c|c|}
\hline
Brand & DeepLearning\_WordEmb\_LSTM & Google NLP & WordNetLexicon & Amazon Ratings \\ \hline
Apple & 0.52123 & 0.58509 & 0.53234 & 0.59240 \\ \hline
Huawei & 0.57782 & 0.50757 & 0.53302 & 0.76220 \\ \hline
Samsung & 0.56242 & 0.58984 & 0.54255 & 0.68910 \\ \hline
\end{tabular}
\caption{Sentiment Approach Comparisons per Brand}
\label{senti_approach}
\end{table}
文件类型为\documentclass[sigconf]{acmart}
答案1
对于双列格式,必须做出一些妥协。
在您的表格中,标题太长,无法容纳该列,因此我建议使用符号引用。
\documentclass[sigconf,twocolumn]{acmart}
\usepackage{booktabs,siunitx}
\usepackage{lipsum} % just for the example
\begin{document}
\lipsum[2] % filler text
\begin{table}[!htp]
\raggedright
\setlength{\tabcolsep}{0pt} % let TeX do the calculations
\sisetup{group-digits=false} % no space between digits
\begin{tabular*}{\columnwidth}{
@{\extracolsep{\fill}}
l % brand
*{4}{S[table-format=1.5]}
}
\toprule
Brand & {(1)} & {(2)} & {(3)} & {(4)} \\
\midrule
Apple & 0.52123 & 0.58509 & 0.53234 & 0.59240 \\
Huawei & 0.57782 & 0.50757 & 0.53302 & 0.76220 \\
Samsung & 0.56242 & 0.58984 & 0.54255 & 0.68910 \\
\bottomrule
\end{tabular*}
\medskip
(1) DeepLearningWordEmb\_LSTM \\
(2) Google NLP \\
(3) WordNetLexicon \\
(4) Amazon Ratings
\medskip
\caption{Sentiment Approach Comparisons per Brand}
\label{senti_approach}
\end{table}
\lipsum[3-13] % more filler text
\end{document}
垂直间距是错误的,因为该类acmart
期望顶部表格的标题。与之前的代码相同,使用以下格式的表格将具有正确的垂直空间。
\begin{table}[!htp]
\raggedright
\setlength{\tabcolsep}{0pt} % let TeX do the calculations
\sisetup{group-digits=false} % no space between digits
\caption{Sentiment Approach Comparisons per Brand}
\label{senti_approach}
\begin{tabular*}{\columnwidth}{
@{\extracolsep{\fill}}
l % brand
*{4}{S[table-format=1.5]}
}
\toprule
Brand & {(1)} & {(2)} & {(3)} & {(4)} \\
\midrule
Apple & 0.52123 & 0.58509 & 0.53234 & 0.59240 \\
Huawei & 0.57782 & 0.50757 & 0.53302 & 0.76220 \\
Samsung & 0.56242 & 0.58984 & 0.54255 & 0.68910 \\
\bottomrule
\end{tabular*}
\medskip
(1) DeepLearningWordEmb\_LSTM \\
(2) Google NLP \\
(3) WordNetLexicon \\
(4) Amazon Ratings
\end{table}
答案2
目前,tabular
嵌入在table
环境中的环境太宽,无法容纳在单个文本列中。“罪魁祸首”是四个数据列标题中的文本字符串,特别是长字符串DeepLearning\_WordEmb\_LSTM
。
我能想到两种补救措施:
\begin{table}[h]
分别将和替换\end{table}
为\begin{table*}
和\end{table*}
。进行此更改后,LaTeX 将在页面顶部的两列中排版表格。根据需要在标题单元格中引入换行符,并使用
tabularx
环境来确保材料的整体宽度为\columnwidth
。在以下示例中,我选择为第一个数据列分配比其他三个数据列更大的宽度,以便将所有标题单元格限制为仅两行。还请注意
1.333+3*0.899=4
;4 也是类型的列数X
。您可能会问,为什么是 0.889 和 1.333?没有什么特别的原因,只是 1.333 比 0.889 大 50%。我不得不猜测四个标题中的两个标题中可接受的换行点在哪里。您可能会同意或不同意这些猜测。
我还通过省略所有垂直线并使用更少但间距适当的水平线,使表格呈现出更加开放的“外观”。
\documentclass[sigconf,twocolumn]{acmart}
\usepackage{lipsum,tabularx,ragged2e,booktabs}
\newcolumntype{C}[1]{%
>{\Centering\arraybackslash\hspace{0pt}%
\hsize=#1\hsize\linewidth=\hsize}X}
\begin{document}
\lipsum[2] % filler text
\begin{table}[h]
\urlstyle{same}
%\centering
\begin{tabularx}{\columnwidth}{@{} l C{1.333} *{3}{C{0.889}} @{}}
\toprule
Brand & DeepLearning\-WordEmb\_LSTM & Google NLP & WordNet\-Lexicon & Amazon Ratings \\
\midrule
Apple & 0.52123 & 0.58509 & 0.53234 & 0.59240 \\ %\hline
Huawei & 0.57782 & 0.50757 & 0.53302 & 0.76220 \\ %\hline
Samsung & 0.56242 & 0.58984 & 0.54255 & 0.68910 \\
\bottomrule
\end{tabularx}
\caption{Sentiment Approach Comparisons per Brand}
\label{senti_approach}
\end{table}
\lipsum[2] % more filler text
\end{document}