使用 subcaption 和 caption 包将子图并排放置

使用 subcaption 和 caption 包将子图并排放置

我有以下一段代码:

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

\begin{document}

    \begin{figure}[hbt!]
            \centering
            \begin{subfigure}[b]{0.5\textwidth}
                \centering
                \includegraphics[width = 0.75 \textwidth]{./fig1}
                \subcaption{$\epsilon$-Greedy}
            \end{subfigure}
            \begin{subfigure}[b]{0.5\textwidth}
                \centering
                \includegraphics[width = 0.75 \textwidth]{./fig2}
                \subcaption{UCB}
            \end{subfigure}
        \end{figure}

\end{document}

这将创建下面的图片:

在此处输入图片描述

但我希望它看起来像下面这样(带有副标题)

在此处输入图片描述

第二张图片是使用subfigure现在已经过时的包创建的,无法正确放置子标题。不过,这是我使用的代码

\begin{figure}[hbt!]
            \centering
            \subfigure{
            \includegraphics[width = 0.45 \textwidth]{./fig1}
                }
            \subfigure{
            \includegraphics[width = 0.45 \textwidth]{./fig2}
            }
        \end{figure}

答案1

我可以建议两种补救措施:

  • 保持环境的宽度subfigure不变,但%在第一个实例之后立即插入(注释字符)\end{subfigure}

  • 将环境的宽度subfigure0.5\textwidth减少到0.45\textwidth\hfill在 的第一个实例之后插入\end{subfigure},然后增加所包含图形的宽度从0.75\textwidth1\textwidth。这种方法还可以让你摆脱所有三个\centering指令,大大减少代码混乱。

在此处输入图片描述

\documentclass[demo]{article} % remove 'demo' option in real document
\usepackage{subcaption,graphicx}

\begin{document}

    \begin{figure}[hbt!]
            \centering
            \begin{subfigure}[b]{0.5\textwidth}
                \centering
                \includegraphics[width = 0.75\textwidth]{./fig1}
                \subcaption{$\epsilon$-Greedy}
            \end{subfigure}%     <-- note the % symbol
            \begin{subfigure}[b]{0.5\textwidth}
                \centering
                \includegraphics[width = 0.75\textwidth]{./fig2}
                \subcaption{UCB}
            \end{subfigure}
    \end{figure}

    \begin{figure}[hbt!]
            \begin{subfigure}[b]{0.45\textwidth}
                \includegraphics[width = 1\textwidth]{./fig1}
                \subcaption{$\epsilon$-Greedy}
            \end{subfigure}\hfill % <-- note the \hfill instruction
            \begin{subfigure}[b]{0.45\textwidth}
                \includegraphics[width = 1\textwidth]{./fig2}
                \subcaption{UCB}
            \end{subfigure}
    \end{figure}
        
\end{document}

相关内容