![Tabela longa, legenda e notas requerem ajuste de posição - ajustar largura não funciona](https://rvso.com/image/370300/Tabela%20longa%2C%20legenda%20e%20notas%20requerem%20ajuste%20de%20posi%C3%A7%C3%A3o%20-%20ajustar%20largura%20n%C3%A3o%20funciona.png)
Tenho o problema de que gostaria de entregar um artigo, porém sou obrigado a usar o modelo que a revista fornece com múltiplas restrições, por exemplo, um grande deslocamento no lado esquerdo. Agora quero ter uma tabela que abranja várias páginas (por isso não posso usar o ambiente de tabela) e não consigo ajustá-la da maneira correta. A legenda e também as notas da tabela devem começar do lado esquerdo sem deslocamento. A tabela em si deve estar centralizada. Atualmente as anotações da mesa também não estão dentro de um ambiente comum com a mesa. Espero que alguém tenha uma solução!
A Tabela 1 mostra como deve ser. A Tabela 2 mostra como está atualmente.
Aqui está meu código de exemplo:
\documentclass[10pt,letterpaper]{article}
\usepackage[top=0.85in,left=2.75in,footskip=0.75in]{geometry}
\usepackage{changepage}
% Text layout
\raggedright
\setlength{\parindent}{0.5cm}
\textwidth 5.25in
\textheight 8.75in
% Captions will be left justified
\usepackage[aboveskip=1pt,labelfont=bf,labelsep=period,justification=raggedright,singlelinecheck=off]{caption}
% Header and Footer
\usepackage{fancyhdr}
\pagestyle{myheadings}
\pagestyle{fancy}
\fancyhf{}
\setlength{\headheight}{27.023pt}
\rfoot{\thepage/\pageref{LastPage}}
\renewcommand{\footrule}{\hrule height 2pt \vspace{2mm}}
\fancyheadoffset[L]{2.25in}
\fancyfootoffset[L]{2.25in}
% ltablex package
\usepackage{ltablex}
\begin{document}
This is just a dummy text to show the general text layout.
This is just a dummy text to show the general text layout.
This is just a dummy text to show the general text layout.
This is just a dummy text to show the general text layout. \\
\begin{table}[!ht]
\begin{adjustwidth}{-2.25in}{0in}
\centering
\caption{
{\bf Table caption... This is how it should look like.}}
\begin{tabular}{|l|l|l|l|l|l|l|l|}
\hline
\multicolumn{4}{|l|}{\bf Heading 1} & \multicolumn{4}{|l|}{\bf Heading 2}\\
\hline
$cell1 row1$ & cell2 row 1 & cell3 row 1 & cell4 row 1 & cell5 row 1 & cell6 row 1 & cell7 row 1 & cell8 row 1\\ \hline
$cell1 row2$ & cell2 row 2 & cell3 row 2 & cell4 row 2 & cell5 row 2 & cell6 row 2 & cell7 row 2 & cell8 row 2\\ \hline
$cell1 row3$ & cell2 row 3 & cell3 row 3 & cell4 row 3 & cell5 row 3 & cell6 row 3 & cell7 row 3 & cell8 row 3\\ \hline
\end{tabular}
\begin{flushleft} Table notes...
\end{flushleft}
\label{table1}
\end{adjustwidth}
\end{table}
\begin{longtable}{|l|l|l|l|l|l|l|}%{@{\extracolsep{\fill}}|l+l|l|l|l|l|l|@{}}
\caption{
\bf{Table caption... This is how it looks like.}} \\
\hline
& \multicolumn{3}{l}{Top Heading 1} \vline & \multicolumn{3}{l}{Top Heading 2} \vline \\
Heading 1 & Heading 2 & Heading 3 & Heading 4 & Heading 5 & Heading 6 & Heading 7 \\
\hline
\endfirsthead
\multicolumn{7}{l}
{\tablename\ \thetable\ -- \textit{Continued from previous page}} \\
\hline
& \multicolumn{3}{l}{Top Heading 1} \vline & \multicolumn{3}{l}{Top Heading 2} \vline \\
Heading 1 & Heading 2 & Heading 3 & Heading 4 & Heading 5 & Heading 6 & Heading 7 \\
\hline
\endhead
\hline \multicolumn{7}{r}{\textit{Continued on next page}} \\
\endfoot
\hline
\endlastfoot
Text & 1 & 2 & 3 & 4 & 5 & 6 \\
Text & 1 & 2 & 3 & 4 & 5 & 6 \\
Text & 1 & 2 & 3 & 4 & 5 & 6 \\
Text & 1 & 2 & 3 & 4 & 5 & 6 \\
Text & 1 & 2 & 3 & 4 & 5 & 6 \\
Text & 1 & 2 & 3 & 4 & 5 & 6 \\
Text & 1 & 2 & 3 & 4 & 5 & 6 \\
Text & 1 & 2 & 3 & 4 & 5 & 6 \\
Text & 1 & 2 & 3 & 4 & 5 & 6 \\
Text & 1 & 2 & 3 & 4 & 5 & 6 \\
Text & 1 & 2 & 3 & 4 & 5 & 6 \\
Text & 1 & 2 & 3 & 4 & 5 & 6 \\
Text & 1 & 2 & 3 & 4 & 5 & 6 \\
Text & 1 & 2 & 3 & 4 & 5 & 6 \\
Text & 1 & 2 & 3 & 4 & 5 & 6 \\
Text & 1 & 2 & 3 & 4 & 5 & 6 \\
Text & 1 & 2 & 3 & 4 & 5 & 6 \\
Text & 1 & 2 & 3 & 4 & 5 & 6 \\
Text & 1 & 2 & 3 & 4 & 5 & 6 \\
Text & 1 & 2 & 3 & 4 & 5 & 6 \\
Text & 1 & 2 & 3 & 4 & 5 & 6 \\
Text & 1 & 2 & 3 & 4 & 5 & 6 \\
Text & 1 & 2 & 3 & 4 & 5 & 6 \\
Text & 1 & 2 & 3 & 4 & 5 & 6 \\
Text & 1 & 2 & 3 & 4 & 5 & 6 \\
Text & 1 & 2 & 3 & 4 & 5 & 6 \\
Text & 1 & 2 & 3 & 4 & 5 & 6 \\
Text & 1 & 2 & 3 & 4 & 5 & 6 \\
Text & 1 & 2 & 3 & 4 & 5 & 6 \\
Text & 1 & 2 & 3 & 4 & 5 & 6 \\
Text & 1 & 2 & 3 & 4 & 5 & 6 \\
Text & 1 & 2 & 3 & 4 & 5 & 6 \\
Text & 1 & 2 & 3 & 4 & 5 & 6 \\
Text & 1 & 2 & 3 & 4 & 5 & 6 \\
Text & 1 & 2 & 3 & 4 & 5 & 6 \\
Text & 1 & 2 & 3 & 4 & 5 & 6 \\
Text & 1 & 2 & 3 & 4 & 5 & 6 \\
Text & 1 & 2 & 3 & 4 & 5 & 6 \\
Text & 1 & 2 & 3 & 4 & 5 & 6 \label{table2}
\end{longtable}
Table notes...
\end{document}
Agradeço antecipadamente!
Responder1
Responder2
editar:
após o esclarecimento da questão em seu comentário abaixo, agora está claro que você também gostaria de ter largura longtable
que não se projete na margem direita. uma solução para isso é fornecida emUlricaresponda abaixo, então adiciono aqui algumas alterações que podem ser do seu agrado (a tabela longa tem a mesma largura da tabela no adjustwidth
ambiente):
veja se as seguintes alterações em seu mwe são aceitáveis para você:
\documentclass{article}
\usepackage[letterpaper,
top=0.85in,left=2.75in,footskip=0.75in]{geometry}
\usepackage{changepage}
% Text layout
\raggedright
\setlength{\parindent}{0.5cm}
%\textwidth 5.25in
%\textheight 8.75in
% Captions will be left justified
\usepackage[aboveskip=1pt,labelfont=bf,labelsep=period,
justification=raggedright,singlelinecheck=off]{caption}
% Header and Footer
\usepackage{fancyhdr}
\pagestyle{myheadings}
\pagestyle{fancy}
\fancyhf{}
\setlength{\headheight}{27.023pt}
\rfoot{\thepage/\pageref{LastPage}}
\renewcommand{\footrule}{\hrule height 2pt \vspace{2mm}}
\fancyheadoffset[L]{2.25in}
\fancyfootoffset[L]{2.25in}
% ltablex package
\usepackage{makecell, % for two line column headers, macro \thead{...\\...}
ltablex}
\renewcommand\theadfont{\normalsize}
\renewcommand\theadgape{}
\begin{document}
This is just a dummy text to show the general text layout.
This is just a dummy text to show the general text layout.
This is just a dummy text to show the general text layout.
This is just a dummy text to show the general text layout. \\
\begin{table}[!ht]
\begin{adjustwidth}{-2.25in}{0in}
\centering
\caption{Table caption... This is how it should look like.}
\begin{tabular*}{\linewidth}{@{\extracolsep{\fill}}
|l|l|l|l|l|l|l|l|}
\hline
\multicolumn{4}{|l|}{\textbf{Heading 1}} & \multicolumn{4}{l|}{\textbf{Heading 2}}\\
\hline
$cell1 row1$ & cell2 row 1 & cell3 row 1 & cell4 row 1 & cell5 row 1 & cell6 row 1 & cell7 row 1 & cell8 row 1\\ \hline
$cell1 row2$ & cell2 row 2 & cell3 row 2 & cell4 row 2 & cell5 row 2 & cell6 row 2 & cell7 row 2 & cell8 row 2\\ \hline
$cell1 row3$ & cell2 row 3 & cell3 row 3 & cell4 row 3 & cell5 row 3 & cell6 row 3 & cell7 row 3 & cell8 row 3\\ \hline
\end{tabular*}
\raggedright
Table notes...
\label{table1}
\end{adjustwidth}
\end{table}
{\setlength{\LTleft}{-2.25in}
\setlength{\LTright}{0in}
\setlength{\LTcapwidth}{\dimexpr\linewidth+4.5in\relax}
\begin{longtable}{@{\extracolsep{\fill}}
|l|l|l|l|l|l|l|}
\caption{Table caption... This is how it looks like.}
\label{tab:my long table}\\
\hline
& \multicolumn{3}{l|}{Top Heading 1}
& \multicolumn{3}{l|}{Top Heading 2} \\
Heading 1 & Heading 2 & Heading 3 & Heading 4 & Heading 5 & Heading 6 & Heading 7 \\
\hline
\endfirsthead
\caption{ -- \textit{Continued from previous page}} \\
\hline
& \multicolumn{3}{l|}{Top Heading 1} & \multicolumn{3}{l|}{Top Heading 2} \\
Heading 1 & Heading 2 & Heading 3 & Heading 4 & Heading 5 & Heading 6 & Heading 7 \\
\hline
\endhead
\hline \multicolumn{7}{r}{\textit{Continued on next page}} \\
\endfoot
\hline
\endlastfoot
Text & 1 & 2 & 3 & 4 & 5 & 6\\
Text & 1 & 2 & 3 & 4 & 5 & 6\\
Text & 1 & 2 & 3 & 4 & 5 & 6\\
Text & 1 & 2 & 3 & 4 & 5 & 6\\
Text & 1 & 2 & 3 & 4 & 5 & 6\\
Text & 1 & 2 & 3 & 4 & 5 & 6\\
Text & 1 & 2 & 3 & 4 & 5 & 6\\
Text & 1 & 2 & 3 & 4 & 5 & 6\\
Text & 1 & 2 & 3 & 4 & 5 & 6\\
Text & 1 & 2 & 3 & 4 & 5 & 6\\
Text & 1 & 2 & 3 & 4 & 5 & 6\\
Text & 1 & 2 & 3 & 4 & 5 & 6\\
Text & 1 & 2 & 3 & 4 & 5 & 6\\
Text & 1 & 2 & 3 & 4 & 5 & 6\\
Text & 1 & 2 & 3 & 4 & 5 & 6\\
Text & 1 & 2 & 3 & 4 & 5 & 6\\
Text & 1 & 2 & 3 & 4 & 5 & 6\\
Text & 1 & 2 & 3 & 4 & 5 & 6\\
Text & 1 & 2 & 3 & 4 & 5 & 6\\
Text & 1 & 2 & 3 & 4 & 5 & 6\\
Text & 1 & 2 & 3 & 4 & 5 & 6\\
Text & 1 & 2 & 3 & 4 & 5 & 6\\
Text & 1 & 2 & 3 & 4 & 5 & 6\\
Text & 1 & 2 & 3 & 4 & 5 & 6\\
Text & 1 & 2 & 3 & 4 & 5 & 6\\
Text & 1 & 2 & 3 & 4 & 5 & 6\\
Text & 1 & 2 & 3 & 4 & 5 & 6\\
Text & 1 & 2 & 3 & 4 & 5 & 6\\
Text & 1 & 2 & 3 & 4 & 5 & 6\\
Text & 1 & 2 & 3 & 4 & 5 & 6\\
Text & 1 & 2 & 3 & 4 & 5 & 6\\
Text & 1 & 2 & 3 & 4 & 5 & 6\\
Text & 1 & 2 & 3 & 4 & 5 & 6\\
Text & 1 & 2 & 3 & 4 & 5 & 6\\
Text & 1 & 2 & 3 & 4 & 5 & 6\\
Text & 1 & 2 & 3 & 4 & 5 & 6\\
Text & 1 & 2 & 3 & 4 & 5 & 6\\
Text & 1 & 2 & 3 & 4 & 5 & 6\\
Text & 1 & 2 & 3 & 4 & 5 & 6
\end{longtable}
}
Table notes...
\end{document}
que dá (parte superior da primeira página):
(parte superior da segunda página):
- em relação às notas de mesa, veja se
threparttable
(outhreparttablex
) pode melhorar a escrita de notas de mesa. - Você obterá uma aparência mais profissional da tabela com as regras de uso do pacote
booktabs
e omitindo as regras verticais:
mudanças acima mwe são:
...
\usepackage{booktabs,
ltablex}
\begin{document}
This is just a dummy text to show the general text layout.
This is just a dummy text to show the general text layout.
This is just a dummy text to show the general text layout.
This is just a dummy text to show the general text layout. \\
\begin{table}[!ht]
\begin{adjustwidth}{-2.25in}{0in}
\centering
\caption{Table caption... This is how it should look like.}
\begin{tabular*}{\linewidth}{@{\extracolsep{\fill}}
lll lll ll}
\toprule
\multicolumn{4}{l}{\textbf{Heading 1}} & \multicolumn{4}{l}{\textbf{Heading 2}}\\
\midrule
$cell1 row1$ & cell2 row 1 & cell3 row 1 & cell4 row 1 & cell5 row 1 & cell6 row 1 & cell7 row 1 & cell8 row 1\\
$cell1 row2$ & cell2 row 2 & cell3 row 2 & cell4 row 2 & cell5 row 2 & cell6 row 2 & cell7 row 2 & cell8 row 2\\
$cell1 row3$ & cell2 row 3 & cell3 row 3 & cell4 row 3 & cell5 row 3 & cell6 row 3 & cell7 row 3 & cell8 row 3\\
\bottomrule
\end{tabular*}
\raggedright
Table notes...
\label{table1}
\end{adjustwidth}
\end{table}
{\setlength{\LTleft}{-2.25in}
\setlength{\LTright}{0in}
\setlength{\LTcapwidth}{\dimexpr\linewidth+4.5in\relax}
\begin{longtable}{@{\extracolsep{\fill}}
lll lll l
}
\caption{Table caption... This is how it looks like.}
\label{tab:my long table}\\
\hline
& \multicolumn{3}{l}{Top Heading 1}
& \multicolumn{3}{l}{Top Heading 2} \\
\cmidrule(lr){2-4}\cmidrule(lr){5-7}
Heading 1 & Heading 2 & Heading 3 & Heading 4 & Heading 5 & Heading 6 & Heading 7 \\
\toprule
\endfirsthead
\caption{ -- \textit{Continued from previous page}} \\
\midrule
& \multicolumn{3}{l}{Top Heading 1} & \multicolumn{3}{l|}{Top Heading 2} \\
\cmidrule(lr){1-4}\cmidrule(lr){5-7}
Heading 1 & Heading 2 & Heading 3 & Heading 4 & Heading 5 & Heading 6 & Heading 7 \\
\midrule
\endhead
\midrule[\heavyrulewidth]
\multicolumn{7}{r}{\textit{Continued on next page}} \\
\endfoot
\bottomrule
\endlastfoot
Text & 1 & 2 & 3 & 4 & 5 & 6\\
Text & 1 & 2 & 3 & 4 & 5 & 6\\
Text & 1 & 2 & 3 & 4 & 5 & 6\\
Text & 1 & 2 & 3 & 4 & 5 & 6\\
\addlinespace
Text & 1 & 2 & 3 & 4 & 5 & 6\\
Text & 1 & 2 & 3 & 4 & 5 & 6\\
Text & 1 & 2 & 3 & 4 & 5 & 6\\
Text & 1 & 2 & 3 & 4 & 5 & 6\\
\addlinespace
Text & 1 & 2 & 3 & 4 & 5 & 6\\
...