长桌不太合适

长桌不太合适

我在 LaTeX 中创建了一个表格长桌,但存在一些问题。表格在两页之间不太合适,而且垂直线不连续。以下是表格代码:

\begin{longtable}[H]{|p{4cm}|p{3cm}|c|}
    %\begin{tabular}{|p{4cm}|p{3cm}|c|}
    \toprule
 & \textbf{Catégorie des  caractéristiques} & \textbf{Caractéristiques} \\
    \midrule
    \multirow{10}[20]{*}{\parbox{4cm}{Analyses sur World of Warcraft [WoW]}} & \multirow{5}[10]{*}{\textbf{Composition}} & Nombre de membres \\
\cmidrule{3-3} & & Entropie de distribution \\
\cmidrule{3-3} & & Pourcentage des classes présentes \\
\cmidrule{3-3} & & Longueur d’existence \\
\cmidrule{3-3} & & Écart-type des effectifs \\
\cmidrule{2-3} & \multirow{2}[4]{*}{\textbf{Stats du jeu}} & Temps de collaboration moyen \\
\cmidrule{3-3} & & Temps moyen de jeu dans un groupe \\
\cmidrule{2-3} & \multirow{3}[6]{*}{\textbf{Structurelles}} & Entropie de distribution du degré \\
\cmidrule{3-3} & & Coefficient moyen de Clustering dans un groupe \\
\cmidrule{3-3} & & Coefficient moyen de Clustering \\
    \midrule
    \multirow{10}[20]{*}{\textbf{Analyses sur DBLP}} & \multirow{2}[4]{*}{\textbf{Groupe}} & Nombre de membres \\
\cmidrule{3-3} & & Prolificité moyenne \\
\cmidrule{2-3} & \multirow{7}[14]{*}{\textbf{Activités}} & Nombre total des publications dans un groupe \\
\cmidrule{3-3} & & Nombre total des collaborations dans un groupe \\
\cmidrule{3-3} & & Nombre total des publications dans un groupe \\
\cmidrule{3-3} & & Nombre total des  publications en dehors un groupe \\
\cmidrule{3-3} & & Nombre moyen des collaborations dans un groupe \\
\cmidrule{3-3} & & Nombre total des collaborations en dehors un groupe \\
\cmidrule{3-3} & & Coefficient moyen de fidélité des membres \\
\cmidrule{2-3} & \textbf{Structurelles} & Entropie de la distribution des degrés \\
    \bottomrule
%\end{table}%
\end{longtable}

这是我得到的结果:

enter image description here

我希望表格有两页,但每页都有完整的单元格(没有单元格分割)。并且有连续的垂直线。

答案1

\\*可以使用星号形式longtable来防止行后出现分页符。但是,行仍然是断点。因此,为了获得更好的布局,以下示例仅谨慎地使用水平线。主要部分由 分隔\midrule,但表格的子部分由 分隔\addlinespace

然后,其余的分页点就在水平线的后面。该示例需要花一些功夫才能完成分页符。在规则的上方和下方\midrule都有空间。由于分页符应该位于,因此页眉和页脚会进行相应调整。\aboverulesep\belowrulesep\midrule

完整示例:

\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{lmodern}
\usepackage{lipsum}
\usepackage[hmargin=2cm]{geometry}

\usepackage{array}
\usepackage{booktabs}
\usepackage{longtable}

\begin{document}
\vspace*{.6\textheight}

% Multi-line left-aligned text with manual line breaks.
% The base line of the whole is at the top row.
\newcommand*{\tstack}[1]{%
  \begingroup
    \renewcommand*{\arraystretch}{1}%
    \begin{tabular}[t]{@{}l@{}}#1\end{tabular}%
  \endgroup
}
\begin{longtable}{>{\bfseries}l>{\bfseries}ll}
  \caption{Légende de table}\\
  \toprule
 & \tstack{Catégorie des \\ caractéristiques} & \bfseries Caractéristiques \\
  \midrule
\endfirsthead
  \noalign{\kern-\aboverulesep}
  \midrule
\endhead
  \noalign{\kern-\belowrulesep}
\endfoot
  \bottomrule
\endlastfoot
  \smash{\tstack{Analyses sur World \\ of Warcraft [WoW]}}
  & Composition & Nombre de membres \\*
  & & Entropie de distribution \\*
  & & Pourcentage des classes présentes \\*
  & & Longueur d’existence \\*
  & & Écart-type des effectifs \\*
  \addlinespace
  & Stats du jeu & Temps de collaboration moyen \\*
  & & Temps moyen de jeu dans un groupe \\*
  \addlinespace
  & Structurelles & Entropie de distribution du degré \\*
  & & Coefficient moyen de Clustering dans un groupe \\*
  & & Coefficient moyen de Clustering \\*
  \midrule
  Analyses sur DBLP & Groupe & Nombre de membres \\*
  & & Prolificité moyenne \\*
  \addlinespace
  & Activités & Nombre total des publications dans un groupe \\*
  & & Nombre total des collaborations dans un groupe \\*
  & & Nombre total des publications dans un groupe \\*
  & & Nombre total des  publications en dehors un groupe \\*
  & & Nombre moyen des collaborations dans un groupe \\*
  & & Nombre total des collaborations en dehors un groupe \\*
  & & Coefficient moyen de fidélité des membres \\*
  \addlinespace
  & Structurelles & Entropie de la distribution des degrés \\*
\end{longtable}
\end{document}

第一页

Page 1

和第二页

Page 2

表格下方的标题

通常,表格标题是先读的,表格通常是按阅读顺序排列的。因此,表格标题放在表格上方。也longtable假定此顺序。

将表格放在多页表格的末尾会麻烦得多:

  • 标题周围的垂直间距需要固定。
  • 表格列表中的条目应显示表格的第一页。当它指向表格的标题时,读者将被引导到表格的末尾。该示例添加了一种解决方法,以将第一页的页码放入表格列表中。
  • 类似问题有参考。示例在表格的第一页和最后一页使用了两个标签。

完整示例:

\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{lmodern}
\usepackage{lipsum}
\usepackage[hmargin=2cm]{geometry}

\usepackage{array}
\usepackage{booktabs}
\usepackage{longtable}
\usepackage{multirow}

\begin{document}
\listoftables
\section{First section}
Table~\ref{tab:ref:MyLabel} starts at page~\pageref{tab:page:MyLabel}
and ends at page~\pageref{tab:ref:MyLabel}.
\newpage

\vspace*{.6\textheight}

\newcommand*{\tstack}[1]{%
  \begingroup
    \renewcommand*{\arraystretch}{1}%
    \begin{tabular}[t]{@{}l@{}}#1\end{tabular}%
  \endgroup
}
\xdef\BaseLineSkip{\the\baselineskip}
\def\TableCaption{Légende de table}
\begin{longtable}{>{\bfseries}l>{\bfseries}ll}
  % \caption{Légende de table}\\
  \noalign{%
    \label{tab:page:MyLabel}%
    \addcontentsline{lot}{table}{\numberline{\thetable}\TableCaption}%
  }%
  \toprule
 & \tstack{Catégorie des \\ caractéristiques} & \bfseries Caractéristiques \\
  \midrule
\endfirsthead
  \noalign{\kern-\aboverulesep}
  \midrule
\endhead
  \noalign{\kern-\belowrulesep}
\endfoot
  \bottomrule
  % Caption with workaround for the vertical spacing
  \noalign{\vskip\BaseLineSkip}
  \caption[]{\TableCaption}\label{tab:ref:MyLabel}\\[-\BaseLineSkip]
\endlastfoot
  \smash{\tstack{Analyses sur World \\ of Warcraft [WoW]}}
  & Composition & Nombre de membres \\*
  & & Entropie de distribution \\*
  & & Pourcentage des classes présentes \\*
  & & Longueur d’existence \\*
  & & Écart-type des effectifs \\*
  \addlinespace
  & Stats du jeu & Temps de collaboration moyen \\*
  & & Temps moyen de jeu dans un groupe \\*
  \addlinespace
  & Structurelles & Entropie de distribution du degré \\*
  & & Coefficient moyen de Clustering dans un groupe \\*
  & & Coefficient moyen de Clustering \\*
  \midrule
  Analyses sur DBLP & Groupe & Nombre de membres \\*
  & & Prolificité moyenne \\*
  \addlinespace
  & Activités & Nombre total des publications dans un groupe \\*
  & & Nombre total des collaborations dans un groupe \\*
  & & Nombre total des publications dans un groupe \\*
  & & Nombre total des  publications en dehors un groupe \\*
  & & Nombre moyen des collaborations dans un groupe \\*
  & & Nombre total des collaborations en dehors un groupe \\*
  & & Coefficient moyen de fidélité des membres \\*
  \addlinespace
  & Structurelles & Entropie de la distribution des degrés \\*
\end{longtable}
\end{document}

第一页

Page 1

第二页

Page 2

和第三页

Page 3

答案2

您的表格大约占页面的 2/3,因此不需要将其设置为长表格。因为longtable您遇到了单元格损坏的问题multirow,这会导致下一页出现虚假的空白单元格,并且上一页的内容不会居中。

关于使用来自包的规则,您应该考虑上述评论,但是如果删除规则上方和下方的额外垂直空间以及由“makecell˙package”中的宏booktas定义的额外空间,则可以使用它。\makegapedcells

在多行中multirow不需要parbox。最新版本的multirow软件包提供了{=}在多行单元格中保留列格式的选项。

\documentclass{article}
\usepackage[utf8]{inputenc}

\usepackage{array,booktabs,makecell,multirow,longtable}
\renewcommand\theadfont{\bfseries\normalsize}

\begin{document}
\begin{table}[htb]
    \setlength\aboverulesep{0pt}
    \setlength\belowrulesep{0pt}
    \setcellgapes{3pt}
    \makegapedcells
\begin{tabular}{|>{\bfseries}p{3cm}|>{\bfseries}p{3cm}|c|}
    \toprule
               & \thead[b]{Catégorie des\\  caractéristiques} 
                 & \thead[b]{Caractéristiques} \\
    \midrule
\multirow{10}{=}[-3em]{Analyses sur World of Warcraft [WoW]}
               & \multirow{5}{=}[-2em]{Composition} 
                 & Nombre de membres \\
\cmidrule{3-3} & & Entropie de distribution \\
\cmidrule{3-3} & & Pourcentage des classes présentes \\
\cmidrule{3-3} & & Longueur d’existence \\
\cmidrule{3-3} & & Écart-type des effectifs \\
\cmidrule{2-3} & \multirow{2}{=}[-1ex]{Stats du jeu} 
                 & Temps de collaboration moyen \\
\cmidrule{3-3} & & Temps moyen de jeu dans un groupe \\
\cmidrule{2-3} & \multirow{3}{=}[-1em]{Structurelles} 
                 & Entropie de distribution du degré \\
\cmidrule{3-3} & & Coefficient moyen de Clustering dans un groupe \\
\cmidrule{3-3} & & Coefficient moyen de Clustering \\
    \midrule
\multirow{10}{=}[-4em]{Analyses sur DBLP} 
               & \multirow{2}{=}[-1ex]{Groupe} 
                  & Nombre de membres \\
\cmidrule{3-3} & & Prolificité moyenne \\
\cmidrule{2-3} & \multirow{7}{=}[-3em]{Activités} 
                 & Nombre total des publications dans un groupe \\
\cmidrule{3-3} & & Nombre total des collaborations dans un groupe \\
\cmidrule{3-3} & & Nombre total des publications dans un groupe \\
\cmidrule{3-3} & & Nombre total des  publications en dehors un groupe \\
\cmidrule{3-3} & & Nombre moyen des collaborations dans un groupe \\
\cmidrule{3-3} & & Nombre total des collaborations en dehors un groupe \\
\cmidrule{3-3} & & Coefficient moyen de fidélité des membres \\
\cmidrule{2-3} & Structurelles
                 & Entropie de la distribution des degrés \\
    \bottomrule
\end{tabular}
    \end{table}
\end{document}

enter image description here

附录: 如果您longtable在手动拆分表格时坚持保留并接受垂直空白空间(如 Sveinung 答案中所建议的那样),那么 MWE 就是

\documentclass{article}
\usepackage[utf8]{inputenc}

\usepackage{array,booktabs,makecell,multirow,longtable}
\renewcommand\theadfont{\bfseries\normalsize}
\usepackage{lipsum}

\begin{document}
\lipsum[1]
{
\setlength\aboverulesep{0pt}
\setlength\belowrulesep{0pt}
\setcellgapes{3pt}
\makegapedcells
    \begin{longtable}{|>{\bfseries}p{3cm}|>{\bfseries}p{3cm}|c|}
\caption{Example of long table. For final form of table it have to be complied at list twice.}
\label{table1}                                                      \\
    \toprule
               & \thead[b]{Catégorie des\\  caractéristiques} 
                 & \thead[b]{Caractéristiques} \\
    \midrule
\endfirsthead
    \toprule
               & \thead[b]{Catégorie des\\  caractéristiques}
                 & \thead[b]{Caractéristiques} \\
\endhead
    \bottomrule
\endfoot
    \bottomrule
\endlastfoot
\multirow{10}{=}[-3em]{Analyses sur World of Warcraft [WoW]}
               & \multirow{5}{=}[-2em]{Composition} 
                 & Nombre de membres \\
\cmidrule{3-3} & & Entropie de distribution \\
\cmidrule{3-3} & & Pourcentage des classes présentes \\
\cmidrule{3-3} & & Longueur d’existence \\
\cmidrule{3-3} & & Écart-type des effectifs \\
\cmidrule{2-3} & \multirow{2}{=}[-1ex]{Stats du jeu} 
                 & Temps de collaboration moyen \\
\cmidrule{3-3} & & Temps moyen de jeu dans un groupe \\
\cmidrule{2-3} & \multirow{3}{=}[-1em]{Structurelles} 
                 & Entropie de distribution du degré \\
\cmidrule{3-3} & & Coefficient moyen de Clustering dans un groupe \\
\cmidrule{3-3} & & Coefficient moyen de Clustering \\
    \pagebreak
\multirow{10}{=}[-4em]{Analyses sur DBLP} 
               & \multirow{2}{=}[-1ex]{Groupe} 
                  & Nombre de membres \\
\cmidrule{3-3} & & Prolificité moyenne \\
\cmidrule{2-3} & \multirow{7}{=}[-3em]{Activités} 
                 & Nombre total des publications dans un groupe \\
\cmidrule{3-3} & & Nombre total des collaborations dans un groupe \\
\cmidrule{3-3} & & Nombre total des publications dans un groupe \\
\cmidrule{3-3} & & Nombre total des  publications en dehors un groupe \\
\cmidrule{3-3} & & Nombre moyen des collaborations dans un groupe \\
\cmidrule{3-3} & & Nombre total des collaborations en dehors un groupe \\
\cmidrule{3-3} & & Coefficient moyen de fidélité des membres \\
\cmidrule{2-3} & Structurelles
                 & Entropie de la distribution des degrés \\
    \end{longtable}
\end{document}

(就我的眼睛看)结果很糟糕:

enter image description here

答案3

  1. 首先booktabs从序言中删除。如果你要让 Word 看起来像表格,booktabs那么这根本没用。
  2. 删除 [H] 作为可选参数longtabs(这是错误的)
  3. 删除表格中的所有 booktab 特定规则命令(toprule、midrule、cmdrule 等)。用标准 hrule、crule 替换tabular
  4. \pagebreak在第二个命令之前放置一个命令\multirow,以强制在垂直跨越的单元格之前中断。当您使用多行时,看起来像一个大单元格不是一个大单元格,而是跨越的单元格数multirow

以下是 MWE,它给出了一个丑陋的类似单词的表格,但保留了垂直线。消息是:不要在表格中使用垂直线,这是不必要的,而且不好看

\documentclass{scrartcl}
\usepackage{longtable,multirow}

\begin{document}

This is a text with a lot of meaning, but you probably will not understand that. This is a text with a lot of meaning, but you probably will not understand that.
This is a text with a lot of meaning, but you probably will not understand that.
This is a text with a lot of meaning, but you probably will not understand that.


This is a text with a lot of meaning, but you probably will not understand that.
This is a text with a lot of meaning, but you probably will not understand that. This is a text with a lot of meaning, but you probably will not understand that. This is a text with a lot of meaning, but you probably will not understand that.

This is a text with a lot of meaning, but you probably will not understand that. This is a text with a lot of meaning, but you probably will not understand that. This is a text with a lot of meaning, but you probably will not understand that. This is a text with a lot of meaning, but you probably will not understand that.

This is a text with a lot of meaning, but you probably will not understand that. This is a text with a lot of meaning, but you probably will not understand that. This is a text with a lot of meaning, but you probably will not understand that. This is a text with a lot of meaning, but you probably will not understand that.

This is a text with a lot of meaning, but you probably will not understand that. This is a text with a lot of meaning, but you probably will not understand that. This is a text with a lot of meaning, but you probably will not understand that. This is a text with a lot of meaning, but you probably will not understand that.

This is a text with a lot of meaning, but you probably will not understand that. This is a text with a lot of meaning, but you probably will not understand that. This is a text with a lot of meaning, but you probably will not understand that. This is a text with a lot of meaning, but you probably will not understand that. 

This is a text with a lot of meaning, but you probably will not understand that. This is a text with a lot of meaning, but you probably will not understand that. This is a text with a lot of meaning, but you probably will not understand that. This is a text with a lot of meaning, but you probably will not understand that.

\begin{longtable}[c]{|p{4cm}|p{3cm}|c|}
    %\begin{tabular}{|p{4cm}|p{3cm}|c|}

\hline
 & \textbf{Catégorie des  caractéristiques} & \textbf{Caractéristiques} \\
    \hline
    \multirow{10}[20]{*}{\parbox{4cm}{Analyses sur World of Warcraft [WoW]}} & \multirow{5}[10]{*}{\textbf{Composition}} & Nombre de membres \\
\cline{3-3} & & Entropie de distribution \\
\cline{3-3} & & Pourcentage des classes présentes \\
\cline{3-3} & & Longueur d’existence \\
\cline{3-3} & & Écart-type des effectifs \\
\cline{2-3} & \multirow{2}[4]{*}{\textbf{Stats du jeu}} & Temps de collaboration moyen \\
\cline{3-3} & & Temps moyen de jeu dans un groupe \\
\cline{2-3} & \multirow{3}[6]{*}{\textbf{Structurelles}} & Entropie de distribution du degré \\
\cline{3-3} & & Coefficient moyen de Clustering dans un groupe \\
\cline{3-3} & & Coefficient moyen de Clustering \\
    \hline\pagebreak\hline
    \multirow{10}[20]{*}{\textbf{Analyses sur DBLP}} & \multirow{2}[4]{*}{\textbf{Groupe}} & Nombre de membres \\
\cline{3-3} & & Prolificité moyenne \\
\cline{2-3} & \multirow{7}[14]{*}{\textbf{Activités}} & Nombre total des publications dans un groupe \\
\cline{3-3} & & Nombre total des collaborations dans un groupe \\
\cline{3-3} & & Nombre total des publications dans un groupe \\
\cline{3-3} & & Nombre total des  publications en dehors un groupe \\
\cline{3-3} & & Nombre moyen des collaborations dans un groupe \\
\cline{3-3} & & Nombre total des collaborations en dehors un groupe \\
\cline{3-3} & & Coefficient moyen de fidélité des membres \\
\cline{2-3} & \textbf{Structurelles} & Entropie de la distribution des degrés \\
    \hline
%\end{table}%
\end{longtable}
\end{document}

相关内容