我在一篇双栏文章中有 5 张图片,现在使用时multicols
显示figure*
如下。
\begin{figure*}
\begin{multicols}{2}
\includegraphics[width=\linewidth]{0.001.eps}\par
\includegraphics[width=\linewidth]{0.005.eps}\par
\end{multicols}
\begin{multicols}{2}
\includegraphics[width=\linewidth]{0.010.eps}\par
\includegraphics[width=\linewidth]{0.030.eps}\par
\end{multicols}
\begin{multicols}{2}
\includegraphics[width=\linewidth]{0.050.eps}\par
\end{multicols}
\caption{Here is the caption}
\label{here is the label}
\end{figure*}
但是我想将最后一张图片置于中心。我该如何实现?
答案1
偷懒的方法可能是只使用 hspaces;比如
\documentclass[12pt,a4paper,twocolumn]{scrartcl}
\usepackage{graphicx}
\begin{document}
\begin{figure*}\centering
\includegraphics[width=0.48\linewidth]{example-image-a}
\hspace{.005\linewidth}
\includegraphics[width=0.48\linewidth]{example-image-b}
\\[.5\baselineskip]
\includegraphics[width=0.48\linewidth]{example-image-a}
\hspace{.005\linewidth}
\includegraphics[width=0.48\linewidth]{example-image-b}
\\[.5\baselineskip]
\includegraphics[width=0.48\linewidth]{example-image-a}
\caption{5 Images.}
\end{figure*}
\end{document}
请注意,这里的换行符延长了半个基线,以便在图像之间留出空间。
不过,我更倾向于一种解决方案,subcaption
它还允许使用以下方法引用子图(即图 1(a)等)
\documentclass[12pt,a4paper,twocolumn]{scrartcl}
\usepackage{graphicx,subcaption}
\begin{document}
\begin{figure*}\centering
\begin{subfigure}{.49\linewidth}
\includegraphics[width=0.98\linewidth]{example-image-a}
\caption{First.}
\end{subfigure}
\begin{subfigure}{.49\linewidth}
\includegraphics[width=0.98\linewidth]{example-image-b}
\caption{Second.}
\end{subfigure}
\begin{subfigure}{.49\linewidth}
\includegraphics[width=0.98\linewidth]{example-image-a}
\caption{Third.}
\end{subfigure}
\begin{subfigure}{.49\linewidth}
\includegraphics[width=0.98\linewidth]{example-image-b}
\caption{Fourth.}
\end{subfigure}
\begin{subfigure}{.49\linewidth}
\includegraphics[width=0.98\linewidth]{example-image-a}
\caption{Fifth.}
\end{subfigure}
\caption{5 Images.}
\end{figure*}
\end{document}
由此得出
请注意,这在内部需要相对大小,即\linewidth
子图中指的是子图本身的宽度。可以使用子标题中的选项(子标签样式间距等)进一步设置样式。也许您还想\centering
在子图内部使用 - 我将保留代码原样,因为它直接生成相应的图像。
答案2
我已经设法使用表格环境解决了这个问题!
\begin{figure*}
\centering
\begin{tabular}{@{}cc@{}}
\includegraphics[width=0.49\linewidth]{0.001.eps} &
\includegraphics[width=0.49\linewidth]{0.005.eps} \\
\includegraphics[width=0.49\linewidth]{0.010.eps} &
\includegraphics[width=0.49\linewidth]{0.030.eps} \\
\multicolumn{2}{c}{\includegraphics[width=0.49\linewidth]{0.050.eps}}
\end{tabular}
\caption{Here is the caption}
\end{figure*}
这里使用\multicolumn{2}{c}{\includegraphics[width=0.49\linewidth]
最后一个图形来居中!
答案3
此代码可用于具有三个图的子图
\begin{figure*} \centering %%% not \center \subfigure[Figure A]{\label{fig:a}\includegraphics[width=0.4\linewidth]{images/congestion_less.pdf}} \subfigure[Figure B]{\label{fig:b}\includegraphics[width=0.4\linewidth]{images/congestion_medium.pdf}} \par\medskip \subfigure[Figure B]{\label{fig:b}\includegraphics[width=0.4\linewidth]{images/congestion_high.pdf}} \caption{my caption} \end{figure*}