
Eu quero ter uma tabela longa como esta:
\begin{center}
\begin{longtable}{|p{2cm}|p{3cm}|p{7cm}|p{3cm}|}
\caption{my caption}
\hline
1 & 2 & 3 & 4\\
\hline
\hline
1 & 2 & 3 & 4\\
\hline
1 & 2 & 3 & 4\\
\hline
.
.
.
1 & 2 & 3 & 4\\
\hline
\label{variability_impl_mech}
\end{longtable}
\end{center}
mas quando tento compilar isso, recebo este erro: !Misplaced \noalign
quando escrevo a legenda após a última \hline, funciona bem. Quero ter a legenda em cima da minha tabela mas aparece esse erro.
Responder1
\begin{longtable}{|p{2cm}|p{3cm}|p{7cm}|p{3cm}|}
\caption{my caption}\\ %%%%<===
\hline
e você deveria colocar o \label
after \caption
, o que faz mais sentido.
Responder2
Outra forma: use head e first head:
\documentclass{article}
\usepackage{longtable}
\begin{document}
\begin{longtable}{|p{2cm}|p{3cm}|p{7cm}|p{3cm}|}
\caption{my caption}
\label{variability_impl_mech}
\endfirsthead
\endhead
\hline
1 & 2 & 3 & 4\\
%\hline
\hline
1 & 2 & 3 & 4\\
\hline
1 & 2 & 3 & 4\\
\hline
.
.
.
1 & 2 & 3 & 4\\
\hline
\end{longtable}
\end{document}
Responder3
Tive um problema com isso, pois gero minhas tabelas com a biblioteca pandas do python. Desta maneira.
print(tabla_1.to_latex(index = False, longtable=True))
Mas o problema é que os pandas geram minhas tabelas longas desta forma:
\begin{longtable}{lrrr}
\toprule
Nombre & No datos & P. rango & total\_isnull \\
\midrule
Então tentei colocar \label
and \caption
before \toprule
, mas nunca compila. Então minha solução foi mudar \toprule
para \hline
e aí você terá sua compilação, exemplo:
\begin{longtable}{lrrr}
\label{YourLabel}
\Caption{YourCaption}
\hline
Nombre & No datos & P. rango & total\_isnull \\
\midrule