Moving tables and figures in LaTeX

Tables and figures have a tendency to surprise, by floating away from where they were specified to appear. This is in fact perfectly ordinary document design; any professional typesetting package will float figures and tables to where they'll fit without violating the certain typographic rules. Even if you use the placement specifier h for 'here', the figure or table will not be printed 'here' if doing so would break the rules; the rules themselves are pretty simple, and are given on page 198, section C.9 of the LaTeX manual. In the worst case, LaTeX's rules can cause the floating items to pile up to the extent that you get an error message saying "Too many unprocessed floats". What follows is a simple checklist of things to do to solve these problems (the checklist talks throughout about figures, but applies equally well to tables, or to "non-standard" floats defined by the float or other packages).

afterpage.sty
Distributed as part of macros/latex/required/tools (zip, browse)
endfloat.sty
macros/latex/contrib/endfloat (zip, browse)
flafter.sty
Part of the LaTeX distribution
float.sty
macros/latex/contrib/float (zip, browse)
morefloats.sty
macros/latex/contrib/misc/morefloats.sty
placeins.sty
macros/latex/contrib/misc/placeins.sty

This question on the Web: http://www.tex.ac.uk/cgi-bin/texfaq2html?label=floats