File indexing completed on 2025-05-04 04:42:37

0001 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
0002 <html>
0003 <!-- This document is an unofficial reference manual for LaTeX, a
0004 document preparation system, version of November 2018.
0005 
0006 This manual was originally translated from LATEX.HLP v1.0a in the
0007 VMS Help Library.  The pre-translation version was written by
0008 George D. Greenwade of Sam Houston State University.  The
0009 LaTeX 2.09 version was written by Stephen Gilmore.  The
0010 LaTeX2e version was adapted from this by Torsten Martinsen.  Karl
0011 Berry made further updates and additions, and gratefully acknowledges
0012 using Hypertext Help with LaTeX, by Sheldon Green, and
0013 LaTeX Command Summary (for LaTeX 2.09) by
0014 L. Botway and C. Biemesderfer (published by the TeX Users
0015 Group as TeXniques number 10), as reference material.  We also
0016 gratefully acknowledge additional material appearing in
0017 latex2e-reference by Martin Herbert Dietze.  (From these references no
0018 text was directly copied.)
0019 
0020 Copyright 2007, 2008, 2009, 2010, 2011, 2012, 2013,
0021 2014, 2015, 2016, 2017, 2018 Karl Berry.
0022 
0023 Copyright 1988, 1994, 2007 Stephen Gilmore.
0024 
0025 Copyright 1994, 1995, 1996 Torsten Martinsen.
0026 
0027 Permission is granted to make and distribute verbatim copies of
0028 this manual provided the copyright notice and this permission notice
0029 are preserved on all copies.
0030 
0031 
0032 Permission is granted to copy and distribute modified versions of this
0033 manual under the conditions for verbatim copying, provided that the entire
0034 resulting derived work is distributed under the terms of a permission
0035 notice identical to this one.
0036 
0037 Permission is granted to copy and distribute translations of this manual
0038 into another language, under the above conditions for modified versions. -->
0039 <!-- Created by GNU Texinfo 6.5, http://www.gnu.org/software/texinfo/ -->
0040 <head>
0041 <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
0042 <title>Floats (LaTeX2e unofficial reference manual (November 2018))</title>
0043 
0044 <meta name="description" content="Floats (LaTeX2e unofficial reference manual (November 2018))">
0045 <meta name="keywords" content="Floats (LaTeX2e unofficial reference manual (November 2018))">
0046 <meta name="resource-type" content="document">
0047 <meta name="distribution" content="global">
0048 <meta name="Generator" content="makeinfo">
0049 <link href="index.html#Top" rel="start" title="Top">
0050 <link href="IndexDocument.html#Index" rel="index" title="Index">
0051 <link href="index.html#SEC_Contents" rel="contents" title="Table of Contents">
0052 <link href="Layout.html#Layout" rel="up" title="Layout">
0053 <link href="Sectioning.html#Sectioning" rel="next" title="Sectioning">
0054 <link href="Page-layout-parameters.html#Page-layout-parameters" rel="prev" title="Page layout parameters">
0055 <style type="text/css">
0056 <!--
0057 /* $Id: latex2e.css 690 2018-09-15 15:20:19Z jimhefferon $
0058    Minor css for latexrefman. Public domain.
0059    Originally written by Jim Hefferon and Karl Berry, 2018. */
0060 
0061 /* So you can style for yourself */
0062 @import url("/css/latexreflocal.css");
0063 
0064 
0065 
0066 a.summary-letter {text-decoration: none}
0067 blockquote.indentedblock {margin-right: 0em}
0068 blockquote.smallindentedblock {margin-right: 0em; font-size: smaller}
0069 blockquote.smallquotation {font-size: smaller}
0070 div.display {margin-left: 3.2em}
0071 div.example {margin-left: 3.2em}
0072 div.lisp {margin-left: 3.2em}
0073 div.smalldisplay {margin-left: 3.2em}
0074 div.smallexample {margin-left: 3.2em}
0075 div.smalllisp {margin-left: 3.2em}
0076 kbd {font-style: oblique}
0077 pre.display {font-family: inherit}
0078 pre.format {font-family: inherit}
0079 pre.menu-comment {font-family: serif}
0080 pre.menu-preformatted {font-family: serif}
0081 pre.smalldisplay {font-family: inherit; font-size: smaller}
0082 pre.smallexample {font-size: smaller}
0083 pre.smallformat {font-family: inherit; font-size: smaller}
0084 pre.smalllisp {font-size: smaller}
0085 span.nolinebreak {white-space: nowrap}
0086 span.roman {font-family: initial; font-weight: normal}
0087 span.sansserif {font-family: sans-serif; font-weight: normal}
0088 ul.no-bullet {list-style: none}
0089 BODY {
0090   margin-top: 1em;
0091   margin-left: 1em; /* auto results in two-digit <ol> lost off left */
0092   margin-right: 1em;
0093   margin-bottom: 1em;
0094   /* the idea is to use the whole window, unless it is ridiculously
0095      wide, probably with too-small fonts, too.  */
0096   max-width: 64em;
0097 }
0098 
0099 /* Because we want @math{... @code ...} to be upright, not slanted,
0100    and Texinfo won't fix it. */
0101 code {font-style:normal; font-family:monospace; }
0102 
0103 /* We put a link to our own home page at the bottom. */
0104 div.referenceinfo {font-size:small;}
0105 
0106 -->
0107 </style>
0108 
0109 
0110 </head>
0111 
0112 <body lang="en">
0113 <a name="Floats"></a>
0114 <div class="header">
0115 <p>
0116 Previous: <a href="Page-layout-parameters.html#Page-layout-parameters" accesskey="p" rel="prev">Page layout parameters</a>, Up: <a href="Layout.html#Layout" accesskey="u" rel="up">Layout</a> &nbsp; [<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="IndexDocument.html#Index" title="Index" rel="index">Index</a>]</p>
0117 </div>
0118 <hr>
0119 <a name="Floats-1"></a>
0120 <h3 class="section">5.6 Floats</h3>
0121 
0122 <p>Some typographic elements, such as figures and tables, cannot be broken
0123 across pages.  They must be typeset outside of the normal flow of text,
0124 for instance floating to the top of a later page.
0125 </p>
0126 <p>LaTeX can have a number of different classes of floating material.
0127 The default is the two classes, <code>figure</code> (see <a href="figure.html#figure">figure</a>) and
0128 <code>table</code> (see <a href="table.html#table">table</a>), but you can create a new class with the
0129 package <samp>float</samp>.
0130 </p>
0131 <p>Within any one float class LaTeX always respects the order, so that
0132 the first figure in a document source must be typeset before the second
0133 figure.  However, LaTeX may mix the classes, so it can happen that
0134 while the first table appears in the source before the first figure, it
0135 appears in the output after it.
0136 </p>
0137 <p>The placement of floats is subject to parameters, given below, that
0138 limit the number of floats that can appear at the top of a page, and
0139 the bottom, etc. If so many floats are queued that the limits prevent
0140 them all from fitting on a page then LaTeX places what it can and
0141 defers the rest to the next page.  In this way, floats may end up
0142 being typeset far from their place in the source.  In particular, a
0143 float that is big may migrate to the end of the document. In which
0144 event, because all floats in a class must appear in sequential order,
0145 every following float in that class also appears at the end.
0146 </p>
0147 <a name="index-placement-of-floats"></a>
0148 <a name="index-specifier_002c-float-placement"></a>
0149 <p>In addition to changing the parameters, for each float you can tweak
0150 where the float placement algorithm tries to place it by using its
0151 <var>placement</var> argument.  The possible values are a sequence of the
0152 letters below. The default for both <code>figure</code> and <code>table</code>, in
0153 both <code>article</code> and <code>book</code> classes, is <code>tbp</code>.
0154 </p>
0155 <dl compact="compact">
0156 <dt><code>t</code></dt>
0157 <dd><p>(Top)&mdash;at the top of a text page.
0158 </p>
0159 </dd>
0160 <dt><code>b</code></dt>
0161 <dd><p>(Bottom)&mdash;at the bottom of a text page.  (However, <code>b</code> is not
0162 allowed for full-width floats (<code>figure*</code>) with double-column
0163 output.  To ameliorate this, use the <samp>stfloats</samp> or
0164 <samp>dblfloatfix</samp> package, but see the discussion at caveats in the
0165 FAQ: <a href="http://www.tex.ac.uk/cgi-bin/texfaq2html?label=2colfloat">http://www.tex.ac.uk/cgi-bin/texfaq2html?label=2colfloat</a>.
0166 </p>
0167 </dd>
0168 <dt><code>h</code></dt>
0169 <dd><p>(Here)&mdash;at the position in the text where the <code>figure</code> environment
0170 appears.  However, <code>h</code> is not allowed by itself; <code>t</code> is
0171 automatically added.
0172 </p>
0173 <a name="index-here_002c-putting-floats"></a>
0174 <a name="index-package_002c-float"></a>
0175 <a name="index-float-package"></a>
0176 
0177 <p>To absolutely force a float to appear &ldquo;here&rdquo;, you can
0178 <code>\usepackage{float}</code> and use the <code>H</code> specifier which it
0179 defines.  For further discussion, see the FAQ entry at
0180 <a href="http://www.tex.ac.uk/cgi-bin/texfaq2html?label=figurehere">http://www.tex.ac.uk/cgi-bin/texfaq2html?label=figurehere</a>.
0181 </p>
0182 </dd>
0183 <dt><code>p</code></dt>
0184 <dd><a name="index-float-page"></a>
0185 <p>(Page of floats)&mdash;on a separate <em>float page</em>, which is a page
0186 containing no text, only floats.
0187 </p>
0188 </dd>
0189 <dt><code>!</code></dt>
0190 <dd><p>Used in addition to one of the above; for this float only, LaTeX
0191 ignores the restrictions on both the number of floats that can appear
0192 and the relative amounts of float and non-float text on the page.
0193 The <code>!</code> specifier does <em>not</em> mean &ldquo;put the float here&rdquo;;
0194 see above.
0195 </p>
0196 </dd>
0197 </dl>
0198 
0199 <p>Note: the order in which letters appear in the <var>placement</var> argument
0200 does not change the order in which LaTeX tries to place the float;
0201 for instance, <code>btp</code> has the same effect as <code>tbp</code>.  All that
0202 <var>placement</var> does is that if a letter is not present then the
0203 algorithm does not try that location.  Thus, LaTeX&rsquo;s default of
0204 <code>tbp</code> is to try every location except placing the float where it
0205 occurs in the source.
0206 </p>
0207 <p>To prevent LaTeX from moving floats to the end of the document or a
0208 chapter you can use a <code>\clearpage</code> command to start a new page and
0209 insert all pending floats. If a pagebreak is undesirable then you can
0210 use the <samp>afterpage</samp> package and issue
0211 <code>\afterpage{\clearpage}</code>.  This will wait until the current page
0212 is finished and then flush all outstanding floats.
0213 </p>
0214 <a name="index-package_002c-flafter"></a>
0215 <a name="index-flafter-package"></a>
0216 
0217 <p>LaTeX can typeset a float before where it appears in the source
0218 (although on the same output page) if there is a <code>t</code> specifier in
0219 the <var>placement</var> parameter.  If this is not desired, and deleting
0220 the <code>t</code> is not acceptable as it keeps the float from being placed
0221 at the top of the next page, then you can prevent it by either using
0222 the <samp>flafter</samp> package or using the command
0223 <a name="index-_005csuppressfloats"></a>
0224 <code>\suppressfloats[t]</code>, which causes floats for the top position on
0225 this page to moved to the next page.
0226 </p>
0227 <p>Parameters relating to fractions of pages occupied by float and
0228 non-float text (change them with
0229 <code>\renewcommand{<var>parameter</var>}{<var>decimal between 0 and 1</var>}</code>):
0230 </p>
0231 <dl compact="compact">
0232 <dt><code>\bottomfraction</code>
0233 <a name="index-_005cbottomfraction"></a>
0234 </dt>
0235 <dd><a name="index-_005cbottomfraction-1"></a>
0236 <a name="floats-bottomfraction"></a><p>The maximum fraction of the page allowed to be occupied by floats at
0237 the bottom; default &lsquo;<samp>.3</samp>&rsquo;.
0238 </p>
0239 </dd>
0240 <dt><code>\floatpagefraction</code>
0241 <a name="index-_005cfloatpagefraction"></a>
0242 </dt>
0243 <dd><a name="index-_005cfloatpagefraction-1"></a>
0244 <a name="floats-floatpagefraction"></a><p>The minimum fraction of a float page that must be occupied by floats;
0245 default &lsquo;<samp>.5</samp>&rsquo;.
0246 </p>
0247 </dd>
0248 <dt><code>\textfraction</code>
0249 <a name="index-_005ctextfraction"></a>
0250 </dt>
0251 <dd><a name="index-_005ctextfraction-1"></a>
0252 <a name="floats-textfraction"></a><p>Minimum fraction of a page that must be text; if floats take up too
0253 much space to preserve this much text, floats will be moved to a
0254 different page.  The default is &lsquo;<samp>.2</samp>&rsquo;.
0255 </p>
0256 </dd>
0257 <dt><code>\topfraction</code>
0258 <a name="index-_005ctopfraction"></a>
0259 </dt>
0260 <dd><a name="index-_005ctopfraction-1"></a>
0261 <a name="floats-topfraction"></a><p>Maximum fraction at the top of a page that may be occupied before
0262 floats; default &lsquo;<samp>.7</samp>&rsquo;.
0263 </p></dd>
0264 </dl>
0265 
0266 <p>Parameters relating to vertical space around floats (change them with a
0267 command of the form <code>\setlength{<var>parameter</var>}{<var>length
0268 expression</var>}</code>):
0269 </p>
0270 <dl compact="compact">
0271 <dt><code>\floatsep</code>
0272 <a name="index-_005cfloatsep"></a>
0273 </dt>
0274 <dd><a name="index-_005cfloatsep-1"></a>
0275 <a name="floats-floatsep"></a><p>Space between floats at the top or bottom of a page; default
0276 &lsquo;<samp>12pt plus2pt minus2pt</samp>&rsquo;.
0277 </p>
0278 </dd>
0279 <dt><code>\intextsep</code>
0280 <a name="index-_005cintextsep"></a>
0281 </dt>
0282 <dd><a name="index-_005cintextsep-1"></a>
0283 <a name="floats-intextsep"></a><p>Space above and below a float in the middle of the main text; default
0284 &lsquo;<samp>12pt plus2pt minus2pt</samp>&rsquo; for 10 point and 11 point documents,
0285 and &lsquo;<samp>14pt plus4pt minus4pt</samp>&rsquo; for 12 point documents.
0286 </p>
0287 </dd>
0288 <dt><code>\textfloatsep</code>
0289 <a name="index-_005ctextfloatsep"></a>
0290 </dt>
0291 <dd><a name="index-_005ctextfloatsep-1"></a>
0292 <a name="floats-textfloatsep"></a><p>Space between the last (first) float at the top (bottom) of a page;
0293 default &lsquo;<samp>20pt plus2pt minus4pt</samp>&rsquo;.
0294 </p></dd>
0295 </dl>
0296 
0297 <p>Counters relating to the number of floats on a page (change them with a
0298 command of the form <code>\setcounter{<var>ctrname</var>}{<var>natural
0299 number</var>}</code>):
0300 </p>
0301 <dl compact="compact">
0302 <dt><code>bottomnumber</code>
0303 <a name="index-bottomnumber"></a>
0304 </dt>
0305 <dd><a name="index-bottomnumber-1"></a>
0306 <a name="floats-bottomnumber"></a><p>Maximum number of floats that can appear at the bottom of a text page;
0307 default 1.
0308 </p>
0309 </dd>
0310 <dt><code>dbltopnumber</code>
0311 <a name="index-dbltopnumber"></a>
0312 </dt>
0313 <dd><a name="index-dbltopnumber-1"></a>
0314 <a name="floats-dbltopnumber"></a><p>Maximum number of full-sized floats that can appear at the top of a
0315 two-column page; default 2.
0316 </p>
0317 </dd>
0318 <dt><code>topnumber</code>
0319 <a name="index-topnumber"></a>
0320 </dt>
0321 <dd><a name="index-topnumber-1"></a>
0322 <a name="floats-topnumber"></a><p>Maximum number of floats that can appear at the top of a text page;
0323 default 2.
0324 </p>
0325 </dd>
0326 <dt><code>totalnumber</code>
0327 <a name="index-totalnumber"></a>
0328 </dt>
0329 <dd><a name="index-totalnumber-1"></a>
0330 <a name="floats-totalnumber"></a><p>Maximum number of floats that can appear on a text page; default 3.
0331 </p></dd>
0332 </dl>
0333 
0334 <p>The principal TeX&nbsp;FAQ entry relating to floats
0335 <a href="http://www.tex.ac.uk/cgi-bin/texfaq2html?label=floats">http://www.tex.ac.uk/cgi-bin/texfaq2html?label=floats</a> contains
0336 suggestions for relaxing LaTeX&rsquo;s default parameters to reduce the
0337 problem of floats being pushed to the end.  A full explanation of the
0338 float placement algorithm is in Frank Mittelbach&rsquo;s article &ldquo;How to
0339 influence the position of float environments like figure and table in
0340 LaTeX?&rdquo;
0341 (<a href="http://latex-project.org/papers/tb111mitt-float.pdf">http://latex-project.org/papers/tb111mitt-float.pdf</a>).
0342 </p>
0343 
0344 
0345 
0346 <hr/><div class='referenceinfo'> <a href='https://latexref.xyz/'> <i>Unofficial LaTeX2e reference manual</i></a></div>
0347 </body>
0348 </html>