跨多页的宽表存在问题

跨多页的宽表存在问题

我正在写博士论文,我是 LaTeX 的新手,正在努力处理表格。如下所示:https://i.stack.imgur.com/LL6sH.jpg我的表格跨越两页,但在第二页它没有正确对齐。

我已经使用了 tabularx、longtable 和 \setlength\LTleft{-1cm},但似乎没有任何帮助,也阅读了其他相关问答,问题仍然存在。我需要我的表格跨越多页,表格必须居中,标题从左侧开始。表格很宽,但我需要将其缩小为纵向布局。

我有下一个代码,它为我提供了一个跨越两页的表格,但在第二个代码中,表格没有正确对齐,它向右移动了大约几个像素:

\documentclass[a4paper,12pt,times,numbered,print,index]{Classes/PhDThesisPSnPDF}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% PREAMBLE: Contains packages and user-defined commands and settings
\usepackage{booktabs}
\usepackage{ltablex}
\usepackage{dcolumn,tabularx,booktabs}
\usepackage{longtable}
\usepackage{pdflscape}
\usepackage{adjustbox} %para ajustar las tablas
\usepackage{ltablex}
\usepackage{textcomp}
\usepackage{siunitx}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{document}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% APPENDICES

\begin{appendices} % Using appendices environment for more functunality
\include{Appendix2/appendix2}
\end{appendices}


%%%%%%%%%%%%%%%%%%%%
%appendix2.tex file
\subsection{CSH table for peptide xxxx in xxxx mM DPC}
\label{table:CSH-xxxxx-DPC} 
\setlength\LTleft{-1cm}
\begin{tabularx}{\linewidth}{lllll lllll lll}
\caption{chemical shifts (ppm from DSS)  for peptide ----}\\  

\endfirsthead
 \endhead

\toprule
\multicolumn{2}{l}{\textbf{Residue}}   &
\textbf{HN}  & 
\textbf{ H\textalpha }& 
\textbf{H\textbeta}  &   
\textbf{H\textgamma }   &
\textbf{H\textdelta }   &
\textbf{H\textepsilon }     &   
\textbf{H\textzeta }   &
\textbf{C\textalpha  } 
\\[6pt]
\midrule


Arg &   845 &   7.37    &   7.37    &   7.37    ,   7.37    &   7.37    ,   7.37            &   7.37    ,   7.37    &   7.37        7.37    &   6.70    ,   6.57    &   56.76   \\


\bottomrule
\end{longtable}
\clearpage

谢谢

答案1

编辑:

在您回复之后,我再次检查了我的答案......并发现代码中存在一些故障,这些故障是由于不理解表格上下文而引起的。现在我怀疑,该表实际上有九列。在回答文档类时,我使用了bookPhDThesisPSnPDF没有使用过的类。

您可以使用tabularx,但在这种情况下至少有一列必须是以下X类型:

\documentclass[a4paper,12pt,times,numbered,print,index]{report}%{Classes/PhDThesisPSnPDF}
\usepackage[showframe]{geometry}

\usepackage{booktabs, ltablex}
\newcommand\mcbf[1]{\multicolumn{1}{c}{\textbf{#1}}}    % <-- added

\usepackage{textcomp}
\usepackage{siunitx}

\usepackage[version=4]{mhchem}    % <-- added

\begin{document}
\setlength\LTcapwidth{\linewidth}  % <-- added
\keepXColumns                      % <-- added
\small                             % <-- added
\setlength\tabcolsep{5pt}          % <-- added 
\begin{tabularx}{\linewidth}{*{10}{X}}
\begin{tabularx}{\linewidth}{@{} X*{8}{l} @{}}
\caption{\ce{^1H} and \ce{^13 C\alpha} chemical shifts (ppm from DSS)  for peptide --- in \ce{H2O}/\ce{D2O} (9:1 v/v), \SI{30}{mM} DPC, pH 3.5, \SI{35}\degreeCelsius}\\
    \toprule
 \textbf{Residue}       &
\mcbf{HN}               &
\mcbf{\ce{H\alpha}}     &
\mcbf{\ce{H\beta}}      &
\mcbf{\ce{H\gamma}}     &
\mcbf{\ce{H\delta}}     &
\mcbf{\ce{H\epsilon}}   &
\mcbf{\ce{H\zeta}}      &
\mcbf{\ce{C\alpha}}   \\
     \midrule
\endfirsthead
% table headers on the next page
\caption{\ce{^1H} and \ce{^13 C\alpha} chemical shifts \dots (cont.) }  \\
    \toprule
 \textbf{Residue}       &
\mcbf{HN}               &
\mcbf{\ce{H\alpha}}     &
\mcbf{\ce{H\beta}}      &
\mcbf{\ce{H\gamma}}     &
\mcbf{\ce{H\delta}}     &
\mcbf{\ce{H\epsilon}}   &
\mcbf{\ce{H\zeta}}      &
\mcbf{\ce{C\alpha}}   \\
     \midrule
\endhead
    \bottomrule
\multicolumn{9}{r}{\footnotesize\itshape continue on the next page} % <-- added
\endfoot
\endlastfoot
%%%% table body
Arg 845 &   7.37    &   7.37    &   7.37, 7.37    &   7.37, 7.37    &   7.37, 7.37
    &   7.37 7.37   &   6.70, 6.57  &   56.76   \\
Arg 845 &   7.37    &   7.37    &   7.37, 7.37    &   7.37, 7.37    &   7.37, 7.37
    &   7.37 7.37   &   6.70, 6.57  &   56.76   \\
% ... 
    \bottomrule    
\end{tabularx}

\end{document}

该代码需要编译三次才能获得正确的形式。

  • 代码中的变化以 表示% <-- added
  • 我建议使用
    • mhchem化学公式包,
    • siunity单位包。
  • 因为表格比文本宽度略宽,所以考虑了两个措施(如果原始文档情况并非如此,则可以删除此更改):
    • \small使用字体大小
    • 将列之间的距离从默认值减少6pt5pt

在此处输入图片描述

在此处输入图片描述

在此处输入图片描述

在此处输入图片描述

答案2

感谢@Bernard 和@Zarko,我终于找到了问题所在:

我现在改为 longtable 并添加了以下几行:

\setlength\LTleft{-1cm}
\setlength\LTright{-1cm}
\begin{longtable}{lllll lllll lll}

%%%%%%content

\bottomrule
\end{longtable}
\clearpage

相关内容