我正在尝试创建一个多面板图形,并且我希望这些图形并排放置(共有 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
你是指这样的吗?
为了使图A
和B
位于同一行,环境之间不能有空行。您可以在它们之间添加一个(或一个)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
来获得三张具有相同尺寸的图像:
我获得了这个新图形,设置了以下宽度:
- 数字
A
:width=0.5\linewidth
; - 数字
B
:width=0.5\linewidth
; - 数字
C
:width=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}