4

I am adding figures into a two-column LaTeX file. In one page, I need to put a one-column figure and a two-column figure in a same page. The one-column figure should be in the top of the page and the two-column figure should be in the bottom. (I think I've seen this sort of layout in some papers.) However, I found it really hard.

I have tried float package. It didn't work. I even have tried to reset the float placement parameters, e.g., \dblfloatpagefraction to 1. It didn't work either. The two-column figure always falls into the next page.

I have almost accepted the truth that this is formidable. But I am still holding the last hope that someone knows how to do this.

0

1 Answer 1

7

For two-column figures, use the figure* environment. Also note that the placement of such figures is always delayed by one page (by default). The following MWE shows an arrangement that allows a top-floating one-column figure together with a bottom-floating two-column figure on the same page (with the aid of dblfloatfix):

enter image description here

\documentclass[twocolumn]{article}
\usepackage{lipsum}% http://ctan.org/pkg/lipsum
\usepackage{graphicx,dblfloatfix}% http://ctan.org/pkg/{graphicx,dblfloatfix}
\begin{document}
\lipsum[1-3]

\begin{figure*}[b]
  \centering\includegraphics[width=\linewidth,height=0.1\textheight]{example-image-b}
  \caption{B caption}
\end{figure*}

\lipsum[4-7]

\begin{figure}[t]
  \centering\includegraphics[width=\columnwidth,height=0.1\textheight]{example-image-a}
  \caption{A caption}
\end{figure}

\lipsum[8-12]
\end{document}

Note that the figure numbering is not ideal. Figure 2 (one-column) is at the top while Figure 1 (two-column) is at the bottom. It is possible to play around with the figure counters in order to obtain a better result. However, this is all because figure*'s difficulty in being placed properly.

\documentclass[twocolumn]{article}
\usepackage{lipsum}% http://ctan.org/pkg/lipsum
\usepackage{graphicx,dblfloatfix}% http://ctan.org/pkg/{graphicx,dblfloatfix}
\begin{document}
\lipsum[1-3]

\begin{figure*}[b]
  \stepcounter{figure}% To correct for figure placement & numbering
  \centering\includegraphics[width=\linewidth,height=0.1\textheight]{example-image-b}
  \caption{B caption}
\end{figure*}

\lipsum[4-7]

\begin{figure}[t]
  \addtocounter{figure}{-2}% To correct for figure placement & numbering
  \centering\includegraphics[width=\columnwidth,height=0.1\textheight]{example-image-a}
  \caption{A caption}
  \addtocounter{figure}{2}% Re-establish correct figure number
\end{figure}

\lipsum[8-12]
\end{document}
4
  • Lovely, it works!!! I only have to manually modify the figure counters for both of these two figures, as you did, and those of all the figures that follow, simply by \addtocounter{figure}{1}. But that is the worthy expense to pay. Thank you very much! Commented Apr 28, 2013 at 1:30
  • 1
    What do you mean by the phrase "by default"? Is there a straightforward way to place two-column figures on the same page as the definition?
    – amcnabb
    Commented Oct 30, 2013 at 22:22
  • @amcnabb: "By default" I mean that there's no easy why around it. You could just place the figure a couple of paragraphs before the definition, making it end up in the same location.
    – Werner
    Commented Oct 30, 2013 at 22:26
  • I was hoping there was a better way than that. :) Oh, well. Thanks for the quick response.
    – amcnabb
    Commented Oct 31, 2013 at 18:04

You must log in to answer this question.

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