2

Here is a problem hard to describe and give a minimal code.

I have an equation written like this:

\begin{equation}
    \tau_w = -\frac{T}{\ln(r_{decay})}
\end{equation}
% 
where $r_decay$ is decay ratio in percentage.

Also I have a a full page figure like below:

\begin{figure}[htb!]
    \centering
    \includegraphics{fig1.pdf}
    \caption{Preparation of impact data for pre-processing}
\end{figure}

For a reason, latex chooses to put the figure between equation and 'where' statement during pdflatex compile. Is there a way to push the figure to another page so that information flow does not get distrupted?

In pdf file it looks like this:

page1: some text and equation at the bottom of the page

page2: figure in a new page / no text whatsoever here

page3: statement that follows the equation where

5
  • To place the figure on a page by itself, get rid of the [htb!] location specifier and replace it with [p].
    – Mico
    Commented Oct 8, 2013 at 20:34
  • tried it already. doesn't work. Figure still remains at the same place as if i am using [htb!]
    – Ali
    Commented Oct 8, 2013 at 20:36
  • 1
    Thanks for providing more detail. Are you basically saying that there happens to be a page break following the equation (and before "where...'), and that the location of this page break is quite infelicitous? Could you rewrite some of the stuff on the page prior to the full-page figure to save a line, allowing the "where..." to be placed on the same page as the equation? Or, have you tried inserting the instruction \enlargethispage{1\baselineskip} shortly before the equation?
    – Mico
    Commented Oct 8, 2013 at 21:45
  • this solves the problem but typeset does not look as i expected. thanks!
    – Ali
    Commented Oct 8, 2013 at 22:12
  • Welcome to TeX.SX! Please add a minimal working example (MWE) that illustrates your problem. It will be much easier for us to reproduce your situation and find out what the issue is when we see compilable code, starting with \documentclass{...} and ending with \end{document}. Commented Oct 9, 2013 at 20:21

1 Answer 1

6

Please always post a complete small document that shows the problem, as you have not yet done this, this is untested (but it probably works:-).

If it is a full page figure then the option you show, [htb!] is just about the worst possible combination: you disable float pages (p) which is the natural area for large floats.

Just use \begin{figure} with no option, add the package

\usepackage{flafter}

So that figures never float backwards to the top of the current page, and then move the figure environment in the source until just after the line

where $r_decay$ is decay ratio in percentage.
2
  • I'm starting to think that the figure is already on a page by itself, and that the OP is just looking to avoid having a page break immediately after the equation. I've deleted my answer since the OP's issue may be quite different from what I thought it was at first.
    – Mico
    Commented Oct 8, 2013 at 21:47
  • this creates the desired outcome. however, i wish i could do this without moving figure environment in the latex file much.
    – Ali
    Commented Oct 8, 2013 at 22:19

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .