多面板图形,图形并排排列

多面板图形,图形并排排列

我正在尝试创建一个多面板图形,并且我希望这些图形并排放置(共有 3 个,所以我希望其中两个并排放置,另一个位于第一个下方)。

然而,我只能得到一个图形,其中所有三个子图都一个在另一个之上

这是我的代码

\documentclass{article}
\usepackage{caption}
\usepackage{subcaption}
\usepackage{graphicx}
\begin{document}    
\begin{figure}
\centering
\begin{subfigure}[t]{0.2\textwidth}
\centering
\includegraphics[width=\textwidth]{example-image-a.pdf} 
\caption{Generic} \label{fig:timing1}
\end{subfigure}

\begin{subfigure}[t]{0.2\textwidth}
\centering
\includegraphics[width=\textwidth]{example-image-b.pdf} 
\caption{Competitors} \label{fig:timing2}
\end{subfigure}


\begin{subfigure}[t]{0.2\textwidth}
\centering
\includegraphics[width=\textwidth]{example-image-c.pdf} 
\caption{Price regulation} \label{fig:timing3}
 \end{subfigure}

 \caption{Some general caption of all the figures. In (\subref{fig:timing1}) you can see a  green square....}

\end{figure}

\end{document}

在此处输入图片描述

答案1

你是指这样的吗?

在此处输入图片描述

为了使图AB位于同一行,环境之间不能有空行。您可以在它们之间添加一个(或一个)subfigure来调整距离。图前的垂直空间可以通过更改 的值来调整。\hfill\hspace{}C\vspace{}

\documentclass{article}

\usepackage{caption}
\usepackage{subcaption}
\usepackage{graphicx}

\begin{document}    
\begin{figure}
    \centering
    \begin{subfigure}[t]{0.45\textwidth}
        \centering
        \includegraphics[width=\linewidth]{example-image-a.pdf} 
        \caption{Generic} \label{fig:timing1}
    \end{subfigure}
    \hfill
    \begin{subfigure}[t]{0.45\textwidth}
        \centering
        \includegraphics[width=\linewidth]{example-image-b.pdf} 
        \caption{Competitors} \label{fig:timing2}
    \end{subfigure}

    \vspace{1cm}
    \begin{subfigure}[t]{\textwidth}
    \centering
        \includegraphics[width=\linewidth]{example-image-c.pdf} 
        \caption{Price regulation} \label{fig:timing3}
    \end{subfigure}
    \caption{Some general caption of all the figures. In (\subref{fig:timing1}) you can see a  green square....}
\end{figure}
\end{document}

当然,你可以改变所有 s 的宽度subfigure来获得三张具有相同尺寸的图像:

在此处输入图片描述

我获得了这个新图形,设置了以下宽度:

  • 数字Awidth=0.5\linewidth;
  • 数字Bwidth=0.5\linewidth;
  • 数字Cwidth=0.25\linewidth;

您可以调整这些值以获得所需的输出(或使用类似的不同命令\includegraphics[scale=]{})。

编辑:重新阅读这个问题我注意到:

...还有另一个在第一个下面...

因此,如果您想放置C下图A,您只需要此代码:

\documentclass{article}

\usepackage{caption}
\usepackage{subcaption}
\usepackage{graphicx}

\begin{document}    
\begin{figure}
    \centering
    \begin{subfigure}[t]{0.45\textwidth}
        \centering
        \includegraphics[width=0.5\linewidth]{example-image-a.pdf} 
        \caption{Generic} \label{fig:timing1}
    \end{subfigure}
    \hfill
    \begin{subfigure}[t]{0.45\textwidth}
        \centering
        \includegraphics[width=0.5\linewidth]{example-image-b.pdf} 
        \caption{Competitors} \label{fig:timing2}
    \end{subfigure}

    \vspace{1cm}
    \begin{subfigure}[t]{0.45\textwidth}
        \centering
        \includegraphics[width=0.5\linewidth]{example-image-c.pdf} 
        \caption{Price regulation} \label{fig:timing3}
    \end{subfigure}
    \hfill
    \begin{subfigure}[t]{0.45\textwidth}
        % just an empty subfigure to shift C below A
    \end{subfigure}
    \caption{Some general caption of all the figures. In (\subref{fig:timing1}) you can see a  green square....}
\end{figure}
\end{document}

产生:

在此处输入图片描述

答案2

尝试这个:

\begin{figure}
\begin{subfigure}[b]{0.5\textwidth}
\includegraphics[width=\textwidth]{plots/1-a.png}
\centering
\caption{}
\label{1}
\end{subfigure}
\begin{subfigure}[b]{0.5\textwidth}
\includegraphics[width=\textwidth]{plots/1-b.png}
\centering
\caption{}
\label{2}
\end{subfigure}
\begin{subfigure}[b]{1\textwidth}
\includegraphics[width=0.5\textwidth]{plots/1-c.png}
\centering
\caption{}
\label{3}
\end{subfigure}
\caption{general caption ...}
\end{figure}
\begin{equation}

相关内容