如何使用 ltxtable

如何使用 ltxtable

我使用 tabularx 包在论文附录中创建了一个表格,后来我意识到它太长了,而且无法跳转到下一页。我尝试使用 ltxtable 让它跳转到下一页,现在花了一整个下午,但还是无法让它工作……我将其安装在我的主文件中:

\counterwithout{table}{chapter}
\usepackage{caption} 
\usepackage{ltxtable}
\usepackage{filecontents} 
\usepackage{longtable} 
\usepackage{tabularx}

这是我的表的代码:

\begin{filecontents}{\TabelleA1.tex}
\begin{longtable}{ccccccccccccccc}
\renewcommand{\thetable}{\Alph{table}} % Setting table number output to letters 
\setcounter{table}{0}
\caption[This is my table]{\textit{In reality it has 74 rows}}
\toprule
ID& Age & Sex & Group & WST & IQ & Code &    AQ  & ADOS Kommunikation & ADOS Sozial & ADOS Total & ADI-R Sozial & ADI-R Kommunikation & ADI-R Verhalten & ADI-R Beginn\\
\midrule
\endfirsthead
1&29&w&ASS&21&85&AS& 40  &5&7&12    &   14&10&2&3 \\
2&26&m&ASS&27&93&FA& --- &5&9&14&   23&16&5&3\\
3&31&m&ASS&31&101&FA& 29 &4&5&9&        30&16&11&4\\
4&25&w&ASS&34&110&AS&35&3&8&    11& 21& 13& 6&  2\\
5&35&m&ASS&33&107&AS&43&2&5&    7&  17& 4&  4&and many more lines\\
\bottomrule
\endlastfoot
\vspace{2mm}
{\raggedright \footnotesize{\textit{Note.} Abbr = Explanation.}\par}
\end{longtable}
\end{filecontents}
\LTXtable{\textwidth}{\jobname-Tabelle1.tex}

我收到的错误信息:

! Undefined control sequence.
<argument> \TabelleA
1.tex
l.4 \begin{filecontents}{\TabelleA1.tex}

是不是没有安装 filecontents 包?如果我删除与文件内容相关的行,latex 会运行“进程已启动”,但永远不会停止,也不会创建 pdf... 我不能在这个环境中使用等吗?还是问题出在 15 列上?我很绝望,如果你能帮忙\toprule\midrule太好了!

答案1

这是我的建议,使用一个简单的longtable与包结合threeparttablex的表格注释。我还将一些重复的信息从列标题移到公共标题中,并引入了一些缩写。为了使表格适合文本宽度(加载包report的标准宽度geometry)。我还将字体大小减小到,\small并更改了相邻列之间的水平空白(tabcolsep)。最后,我使用了包textfont=it的选项caption,而不是手动设置标题文本以使用斜体。

在此处输入图片描述

\documentclass{report}
\usepackage{geometry}
\usepackage[textfont=it]{caption} 
\usepackage{booktabs}
\usepackage{longtable}
\usepackage[flushleft, para, referable]{threeparttablex}

\begin{document}

\renewcommand{\thetable}{\Alph{table}} 
\begin{ThreePartTable}
\begin{TableNotes}
\note Abbr = Explanation.
\end{TableNotes}
\small
\setlength{\tabcolsep}{3pt}
\begin{longtable}{ccccccccccccccc}
\caption[This is my table]{In reality it has 74 rows}\\
\toprule
& & & & & & & &  \multicolumn{3}{c}{ADOS} & \multicolumn{4}{c}{ADI-R}\\
\cmidrule(r){9-11} \cmidrule(l){12-15}
ID& Age & Sex & Group & WST & IQ & Code &    AQ  &  Kommun. &  Sozial &  Total & Sozial &  Kommun. &  Verh. &  Beginn\\
\midrule
\endfirsthead
\bottomrule
\insertTableNotes\\
\endlastfoot
1&29&w&ASS&21&85&AS& 40  &5&7&12    &   14&10&2&3 \\
2&26&m&ASS&27&93&FA& --- &5&9&14&   23&16&5&3\\
3&31&m&ASS&31&101&FA& 29 &4&5&9&        30&16&11&4\\
4&25&w&ASS&34&110&AS&35&3&8&    11& 21& 13& 6&  2\\
5&35&m&ASS&33&107&AS&43&2&5&    7&  17& 4&  4& \\
\end{longtable}
\end{ThreePartTable}

\end{document}

为了更好地对齐数字,您还可以使用siunitx如下例所示的包:

在此处输入图片描述

\documentclass{report}
\usepackage{geometry}
\usepackage[textfont=it]{caption} 
\usepackage{booktabs}
\usepackage{longtable}
\usepackage[flushleft, para, referable]{threeparttablex}
\usepackage{siunitx}
\begin{document}

\begin{ThreePartTable}
\begin{TableNotes}
\note Abbr = Explanation.
\end{TableNotes}
\small
\setlength{\tabcolsep}{3pt}
\begin{longtable}{cccccS[table-format=2]ccccS[table-format=2]cS[table-format=2]S[table-format=2]c}
\caption[This is my table]{In reality it has 74 rows}\\
\toprule
& & & & & & & &  \multicolumn{3}{c}{ADOS} & \multicolumn{4}{c}{ADI-R}\\
\cmidrule(r){9-11} \cmidrule(l){12-15}
ID& Age & Sex & Group & WST & {IQ} & Code &    AQ  &  Kommun. &  Sozial &  {Total} & Sozial &  {Kommun.} &  {Verh.} &  Beginn\\
\midrule
\endfirsthead
\bottomrule
\insertTableNotes\\
\endlastfoot
1&29&w&ASS&21&85&AS& 40  &5&7&12    &   14&10&2&3 \\
2&26&m&ASS&27&93&FA& --- &5&9&14&   23&16&5&3\\
3&31&m&ASS&31&101&FA& 29 &4&5&9&        30&16&11&4\\
4&25&w&ASS&34&110&AS&35&3&8&    11& 21& 13& 6&  2\\
5&35&m&ASS&33&107&AS&43&2&5&    7&  17& 4&  4& \\
\end{longtable}
\end{ThreePartTable}

\end{document}

相关内容