88

I have the following code for a Figure with 4 subfigures:

\documentclass{article}
\usepackage{graphicx}
\usepackage{caption}
\usepackage{subcaption}

\begin{document}

\begin{figure}[b]
    \centering
    \begin{subfigure}[b]{\textwidth}
        \includegraphics[width=\textwidth]{./plots/arm1.pdf}
        \subcaption{$Q^{*}$ values for arm 1}
        \label{fig:arm1}
    \end{subfigure}
    ~
    \begin{subfigure}[b]{\textwidth}
        \includegraphics[width=\textwidth]{./plots/arm2.pdf}
        \subcaption{$Q^{*}$ values for arm 2}
        \label{fig:arm2}
    \end{subfigure} 
    ~
    \begin{subfigure}[b]{\textwidth}
        \includegraphics[width=\textwidth]{./plots/arm3.pdf}
        \subcaption{$Q^{*}$ values for arm 3}
        \label{fig:arm3}
    \end{subfigure} 
    ~
    \begin{subfigure}[b]{\textwidth}
        \includegraphics[width=\textwidth]{./plots/arm4.pdf}
        \subcaption{$Q^{*}$ values for arm 4}
        \label{fig:arm4}
    \end{subfigure} 
    \caption{$Q^{*}$ values for different arms}
    \label{fig:arms}
\end{figure}

\end{document}

This results in this page

But this way, the 4 subfigures are too large to fit on 1 page. I would like to split this over 2 pages, keeping the subcaptions a, b, ... How can I do this?

1 Answer 1

130

Split your figure into two figures and than to the second one immediately after \begin{figure} add command \ContinuedFloat. With this both figures will have the same caption number, however the sub captions numbering is continued from the previous figure:

\documentclass{article}
\usepackage{graphicx}
\usepackage{caption}
\usepackage[skip=0.5ex]{subcaption}

%---------------- show page layout. don't use in a real document!
\usepackage{showframe}
\renewcommand\ShowFrameLinethickness{0.15pt}
\renewcommand*\ShowFrameColor{\color{red}}
%---------------------------------------------------------------%
\usepackage{lipsum}

    \begin{document}
    \lipsum[1]
\begin{figure}[!b]
    \centering
    \begin{subfigure}{0.6\textwidth}
        \includegraphics[width=\linewidth]{example-image}
        \subcaption{$Q^{*}$ values for arm 1}
        \label{fig:arm1}
    \end{subfigure}

\medskip
    \begin{subfigure}{0.6\textwidth}
        \includegraphics[width=\linewidth]{example-image}
        \subcaption{$Q^{*}$ values for arm 2}
        \label{fig:arm2}
    \end{subfigure}
    \caption{$Q^{*}$ values for different arms}
\end{figure}%
\begin{figure}[ht]\ContinuedFloat
    \centering
    \begin{subfigure}{0.6\textwidth}
        \includegraphics[width=\linewidth]{example-image}
        \subcaption{$Q^{*}$ values for arm 3}
        \label{fig:arm3}
    \end{subfigure}

\medskip
    \begin{subfigure}{0.6\textwidth}
        \includegraphics[width=\linewidth]{example-image}
        \subcaption{$Q^{*}$ values for arm 4}
        \label{fig:arm4}
    \end{subfigure}
    \caption[]{$Q^{*}$ values for different arms (cont.)}
    \label{fig:arms}
\end{figure}
    \lipsum[2-3]
    \end{document}

enter image description here

13
  • 2
    @JNevens, any news? do you resolve your problem? does my answer help you?
    – Zarko
    Feb 9, 2018 at 19:42
  • 5
    Is there a way to prevent that latex inserts something else (e.g. a table or a text page) between the first figure and the second "ContinuedFloat" figure?
    – Robert
    Sep 23, 2019 at 11:18
  • 1
    @Zarke: "It should not happen" - famous last words... It definitely happened in a large text containing multiple figures and tables. I had a complete text page between the two figures.
    – Robert
    Sep 23, 2019 at 12:00
  • 3
    @Robert, sorry, I haven't crystal ball, than I would be able to see, what is going on in your document. So I can only repeat my "famous" words; in normal circumstances between floats as they are organized in MWE in my answer, this should not happen.
    – Zarko
    Sep 23, 2019 at 15:32
  • 2
    @LuísdeSousa, I doubt in your claim. I wrote text book 500 page long with 100 figures, some of them formatted as suggested in answer, 30 tables and about 400 equations and all works fine. Cause of your problems is not the use of solution suggested in my answer but something else.
    – Zarko
    Jul 3, 2020 at 14:38

You must log in to answer this question.

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