7

I wanted to place a figure at the top of the next page.

\blindtext \blindtext \blindtext
\begin{figure}[htbf]
    \centering
        \includegraphics[width=0.9\textwidth]{C:/Thesis/Latex/thesis_1(1)/Figures/studyArea.jpg}
        \rule{35em}{0.3pt}
    \caption{The Grand St. Bernard wireless sensor network deployment (a) the coordinates of nodes according to the Swiss coordinate system (b) the distribution of the nodes in the study site \citep{r33}}
    \label{fig:study area}
\end{figure}
\FloatBarrier
\blindtext
3
  • Sorry, but it's not clear. Do you want to place the figure at the top of the next page?
    – egreg
    Commented Dec 6, 2012 at 20:52
  • 1
    use only [t] if it should be on the next page. I suppose that you do not need \FloatBarrier. And by the way: there is no option ffor the placement of a float,
    – user2478
    Commented Dec 6, 2012 at 20:54
  • @egreg, YEs, exactly.
    – ali amidi
    Commented Dec 6, 2012 at 20:59

1 Answer 1

10

If you want to be absolutely sure that the figure will be placed at the top of the next page (as opposed to, possibly, the top of the page where the \begin{figure} directive is detected), you should use the afterpage package and its \afterpage command:

\documentclass{article}
\usepackage{afterpage,natbib,lipsum}
\usepackage[demo]{graphicx}
\begin{document}
\lipsum[1-3]
\afterpage{%
  \begin{figure}[t!] % use "t!" to force the float to start the float at top of page
    \centering
        \includegraphics[width=0.9\textwidth]{C:/Thesis/Latex/thesis_1(1)/Figures/studyArea.jpg}
        \rule{35em}{0.3pt}
    \caption{The Grand St.~Bernard wireless sensor network deployment 
      (a) the coordinates of nodes according to the Swiss coordinate system 
      (b) the distribution of the nodes in the study site \citep{r33}}
    \label{fig:studyarea} % better not to have a space in the "label"
  \end{figure}
} % end of "afterpage" group
\lipsum[4-6]
\end{document}

Addendum: Assuming that the line you wish to draw between the graph and caption should span the entire width of the text block, I would recommend using the command \rule{\textwidth}{0.3pt} instead of \rule{35em}{0.3pt}.

8
  • It appears at top of the page but it appears before the placed site.
    – ali amidi
    Commented Dec 6, 2012 at 21:14
  • @aliamidi - Does the \afterpage instruction maybe occur at the very top of the page? If so, maybe insert a \null instruction right before \afterpage in order to force the float to the next page. (Note also that I've edited the MWE in the meantime to replace the \blindtext directives with \lipsum directives.)
    – Mico
    Commented Dec 6, 2012 at 21:17
  • it cannot address the problem again.
    – ali amidi
    Commented Dec 6, 2012 at 21:27
  • @aliamidi - I'm not sure I know how to interpret your comment. Are you unable to repeat the problem you're describing -- in which case my proposed solution works for you? Please advise.
    – Mico
    Commented Dec 6, 2012 at 21:59
  • 1
    @aliamidi - Evidently my adaptation of your code snippets doesn't fully capture the problem you're facing. Please consider editing your original question to create a full MWE (minimum working example) that generates the problem you're encountering -- even after encasing the figure float in an \afterpage{} directive. Thanks.
    – Mico
    Commented Dec 6, 2012 at 22:06

You must log in to answer this question.

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