Take the 2-minute tour ×
TeX - LaTeX Stack Exchange is a question and answer site for users of TeX, LaTeX, ConTeXt, and related typesetting systems. It's 100% free, no registration required.

I have two consecutive tables and since they are wide I want to have them in a landscape page. But it doesn't show both of them in one page. here is the code I'm using:

\begin{landscape}
\begin{table}[htb]
\caption{}\label{sup1}
\begin{tabular}
...
\end{tabular}
\end{table}
\begin{table}[htb]
\caption{}\label{sup2}
\begin{center}
\begin{tabular}
...
\end{tabular}
\end{center}
\end{table}
\end{landscape}
share|improve this question
    
I do not want them to be side-by-side. After one finishes, I want the other table to start. –  anna Jan 17 '12 at 3:19
2  
The center environment adds some extra vertical space that may cause one table to flow over to the next page; see Should I use center or centering for figures? Also, since table is a float, it will float around your document based on the amount of space allowed for floats on a page. Would you be able to provide the actual table as well as the package you're using to obtain your output? That is, minimal working example (MWE). –  Werner Jan 17 '12 at 3:25
    
If I can make the margin wider it will fit but I don't know how to do it! –  anna Jan 17 '12 at 3:32
1  
if both tables really do fit on one page, then just include them in a single float. if you keep a blank line between the first –  barbara beeton Jan 17 '12 at 13:41
1  
anna, as @barbarabeeton commented, you can have two \captions (and \labels) in a single float. –  Werner Jan 17 '12 at 15:18

2 Answers 2

if both tables really do fit on one page, then just include them in a single float.

if you put a blank line and some vertical space, say \medskip, between the first \end{tabular} and the second \begin{tabular} they should be set one above the other, not side by side.

you'll need to force them to start on a new page. this can be done by

\usepackage{afterpage,lscape}
...
\afterpage{\clearpage % begin landscape tables
   \begin{landscape}
   ... [tables]
   \end{landscape}
} % end landscape tables

within this scope, if you have more than one page of tables, you can use \newpage. in fact, you can even use longtable (provided you \usepackage{longtable}).

share|improve this answer

If your concern is to keep the two tables on your landscape page at all costs, then using a float might be the wrong option. The reason for this is because LaTeX only allows a certain number of floats on a page and floats may only take up a certain portion of the page. The quantities and parameters governing the placement of floats on a page is explained in detail in How to influence the position of float environments like figure and table in LaTeX?

If this is indeed the problem (tables floating to other pages because they don't fit the parameter requirements), I would suggest not making the tables float by using functionality provided by the caption package (or the lite capt-of package) via \captionof. This allows you to have the captioning capability of floats, without having to use a float:

\begin{landscape}
\centering
\captionof{table}{This is a table.}\label{sup1}\par
\begin{tabular}
...
\end{tabular}

\bigskip

\captionof{table}{This is another table.}\label{sup2}\par
\begin{tabular}
...
\end{tabular}
\end{landscape}

If, on the other hand, you just need a little more vertical space on the page to fit the second table, you could use \enlargethispage{\baselineskip} to have one extra line (or use any length to enlarge the page as much as you want).

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.