59

I've a question on the labels in the subfigure environment. I would like to remove the (a) and (b) and insert something else instead. This 'new' caption is different for every subfigure and not a logical counter (so not i, ii or so). Can any body help me?

I've added a figure showing the current situation (top) and how I would like it to be (bottom).

The top row in the figure is how I have got it now, the bottom row is how I would like it to be!

Masroor
  • 17,842
Karen
  • 593

5 Answers5

131

You can use

\captionsetup[subfigure]{labelformat=empty}

locally:

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

\begin{document}

\begin{figure}
\captionsetup[subfigure]{labelformat=empty}
\begin{subfigure}{.5\textwidth}
\centering
\includegraphics[height=3cm]{example-image-a}
\caption{Test subfigure 1}
\end{subfigure}%
\begin{subfigure}{.5\textwidth}
\centering
\includegraphics[height=3cm]{example-image-b}
\caption{Test subfigure 2}
\end{subfigure}%
\caption{Two subfigures}
\end{figure}

\end{document}

enter image description here

Another option is to use \caption* instead of \caption:

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

\begin{document}

\begin{figure}
\begin{subfigure}{.5\textwidth}
\centering
\includegraphics[height=3cm]{example-image-a}
\caption*{Test subfigure 1}
\end{subfigure}%
\begin{subfigure}{.5\textwidth}
\centering
\includegraphics[height=3cm]{example-image-b}
\caption*{Test subfigure 2}
\end{subfigure}%
\caption{Two subfigures}
\end{figure}

\end{document}
Gonzalo Medina
  • 505,128
20

Like subcaption, the subfig package also have the same option:

\documentclass{article}
\usepackage{graphicx,subfig}
\begin{document}
\captionsetup[subfigure]{labelformat=empty}
\begin{figure}
\centering
\subfloat[Test subfigure 1]{\includegraphics[width=.4\linewidth]{example-image-a}}
\hfill
\subfloat[Test subfigure 2]{\includegraphics[width=.4\linewidth]{example-image-b}}
\caption{Two subfigures}
\end{figure}
\end{document}

But if you do not need the numeration of the subfloats captions ... there are some reason to still use subcaption or subfig ?

For example, the same result can be obtained simply with 2 columns:

\documentclass{article}
\usepackage{graphicx,multicol}
\begin{document}
\begin{figure}
\begin{multicols}{2}
\centering
\includegraphics[width=.7\linewidth]{example-image-a}\\
Test subfigure 1
\includegraphics[width=.7\linewidth]{example-image-b}\\
Test subfigure 2
\end{multicols}
\caption{Two subfigures}
\end{figure}
\end{document}

MWE

Fran
  • 80,769
19

Just stack the subcaption text under the subfigure. You can change the fontsize of the subcaptions just by changing the \footnotesize to the desired size. The gap between figure and caption is controlled by the optional argument to \stackunder and is, in this example, set to 5pt (the default is 3pt).

Note that the subcaptions in this technique, will not automatically word-wrap. In your case, there was no need for wrapping, since they were short labels. If wrapping were needed, the last argument to \stackunder could be a \parbox.

I further assumed, that since you wished to remove the (a), (b), that you had no desire to separately reference the individual subfigures. You can still reference the overall figure with \ref{}.

\documentclass{article}
\usepackage{stackengine}
\usepackage[demo]{graphicx}
\begin{document}
\begin{figure}
\footnotesize
\stackunder[5pt]{\includegraphics[width=2in,height=.7in]{fileA}}{MRI-CGCM3}%
\hspace{1cm}%
\stackunder[5pt]{\includegraphics[width=2in,height=.7in]{fileB}}{NorESM1-M}
\caption{November to April}
\end{figure}
\end{document}

enter image description here

3

If you are using subfloat[]{\includegraphics[]{}} command. Just remove '[]'.

\begin{figure}
    \centering
    \subfloat{\includegraphics[]{figure1}}
    \subfloat{\includegraphics[]{figure2}}
    \subfloat{\includegraphics[]{figure3}}
    \caption{captions}
\end{figure}
1

I had a case where I needed only one such label remove. When declaring the subfigure you can add \empty which will remove the letter for that specific subfigure

\documentclass{article}
\usepackage{graphicx,multicol}
\begin{document}
   \begin{figure}
       \begin{multicols}{2}
            \centering
            \includegraphics[\empty]{example-image-a}
            \includegraphics[\empty]{example-image-b}
        \end{multicols}
    \caption{Two subfigures}
    \end{figure}
\end{document}