我已经使用表格排列了 4 个图。现在我尝试减少行之间的间距,以使图和标签更靠近。
在另一篇文章中(表格中的列和行填充)我读到我应该使用
{\renewcommand{\arraystretch}{1}%
但是,这只适用于固定的下限(0.5 或类似值)。我希望进一步减少空间。
以下是一个简化的示例:
\documentclass[]{article}
\usepackage{graphicx}
\usepackage{tikz}
\begin{document}
\begin{figure}
\small
\begin{tabular}{cc}
\input{top_left_figure.tex} & \input{top_right_figure.tex} \\
(a) Sub figure 1 & (b) Sub figure 2 \\
\input{bottom_left_figure.tex} & \input{bottom_right_figure.tex} \\
(c) Sub figure 3 & (d) Sub figure 4
\end{tabular}
\caption{My title}
\end{figure}
\end{document}
答案1
我建议你不要使用tabular
环境来实现格式化目标。相反,考虑加载subcaption
包并在环境中使用四个subfigure
环境figure
。
这种方法的一个显著的优点是您可以使用 LaTeX 的\label
交叉\ref
引用机制来引用单个子图以及整个图形。
\documentclass[demo]{article} % omit 'demo' option in real document
\usepackage{graphicx,subcaption}
\begin{document}
\begin{figure}
\captionsetup{size=small}
\begin{subfigure}{0.45\textwidth}
\includegraphics[width=\linewidth]{top_left_figure}
\caption{Subfigure 1} \label{fig:4picsa}
\end{subfigure}
\hfill
\begin{subfigure}{0.45\textwidth}
\includegraphics[width=\linewidth]{top_right_figure}
\caption{Subfigure 2} \label{fig:4picsb}
\end{subfigure}
\bigskip
\begin{subfigure}{0.45\textwidth}
\includegraphics[width=\linewidth]{bottom_left_figure}
\caption{Subfigure 3} \label{fig:4picsc}
\end{subfigure}
\hfill
\begin{subfigure}{0.45\textwidth}
\includegraphics[width=\linewidth]{bottom_right_figure}
\caption{Subfigure 4} \label{fig:4picsd}
\end{subfigure}
\caption{My title} \label{fig:4pics}
\end{figure}
\noindent
A cross-reference to Figure~\ref{fig:4pics}. Cross-references to Subfigures~\ref{fig:4picsa} and~\ref{fig:4picsd}.
\end{document}
答案2
为什么使用 atabular
而不是 a subfloat
?
\documentclass{article}
\usepackage{mwe}
\usepackage{subfig}
\begin{document}
\begin{figure}
\begin{minipage}{.5\linewidth}
\centering
\subfloat[Sub figure 1]{\label{fig_a}\includegraphics[width=\linewidth]{example-image-a}}
\end{minipage}%
\begin{minipage}{.5\linewidth}
\centering
\subfloat[Sub figure 2]{\label{fig_b}\includegraphics[width=\linewidth]{example-image-b}}
\end{minipage}\par\medskip
\begin{minipage}{.5\linewidth}
\centering
\subfloat[Sub figure 3]{\label{fig_c}\includegraphics[width=\linewidth]{example-image-c}}
\end{minipage}%
\begin{minipage}{.5\linewidth}
\centering
\subfloat[Sub figure 4]{\label{fig_d}\includegraphics[width=\linewidth]{example-image-a}}
\end{minipage}
\caption{My title}
\label{fig_main}
\end{figure}
\end{document}
(源代码来自这里)