1

I am authoring a report that runs into hundreds of pages. In one particular chapter, I have a large number of tables and figures. I use the setting [htb] for both the tables and the figures, so that latex judiciously arranges them across the pages. But when I generate the PDF file, I see that there is extra space above one or two tables, that run into half a page. I tried using \vspace{*5mm} above the tables to reduce the white space, but still it does not go away. I would like to know whether there is a package that I could use to get a compact formatting, with only minimal white spacing.

TIA

  • Your question is somewhat nonspecific, but I find many things which can be improved. Did you try [!htb]? (Please note the !.) \vspace*{5mm} will increase the white space, not reduce it. (Your * is misplaced.) Also, see these, tex.stackexchange.com/questions/23313/… and www-h.eng.cam.ac.uk/help/tpl/textprocessing/squeeze.html. – Masroor Jan 31 '15 at 5:17
  • I don't think we have enough information to understand the nature of your problem or to diagnose it. Are the floats with extra space on the top, bottom, or float pages? Is the extra space between floats (that is, does it occur when multiple floats are placed together), or only when one float is by itself? What float-related packages are you loading? To start, try giving \vspace a negative value and see if that solves it. (Positive values skip down, negative values skip up.) – dgoodmaniii Jan 31 '15 at 6:24
  • If there are many floats, why not allow float pages with the poption. – Johannes_B Jan 31 '15 at 6:24
  • thanks for all your suggestions. I shall try them and revert. I am using \vspace*{5 mm} to have a minimum space between any float the following text. I introduced this after seeing that there was extra space inserted between a table and the text following caption. @Masroor thanks especially for the links. they are helpful. – Vinod Jan 31 '15 at 6:36
  • The main affect of htb is to prevent latex making float pages, which makes it much harder to find a good float placement and so makes it much more likely that all the floats drift to the end. Was there a particular reason for that choice? – David Carlisle Jan 31 '15 at 8:55
5

Do not use \vspace, but change float behavior. As comments said, you can also add the p option to use float pages of and/or ! to ignore restrictive LaTeX rules, so using [!htbp] by default solve many problems.

But you can also change this rules. Add to the preamble some like this for normal pages:

\renewcommand{\topfraction}{0.9}    % max fraction of floats at top
\renewcommand{\dbltopfraction}{0.9} % the same for 2 column pages
\setcounter{topnumber}{4}           % max float at top
\setcounter{dbltopnumber}{3}        % the same for 2 column pages
\renewcommand{\bottomfraction}{0.9} % max fraction of floats at bottom
\setcounter{bottomnumber}{}         % max float at bottom
\setcounter{totalnumber}{8}         % max floats per page 
\renewcommand{\textfraction}{0.1}   % min text fraction 

Float pages are constructed according to \topfraction,\bottomfraction but also \floatpagefraction or \dblfloatpagefraction that can be changed also via \renewcommand.

You may want also tune commands to control spacing between floats and text. See How to change the spacing between figures/tables and text?

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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