如何创建一个 3x3 的图像矩阵,每行开头都有一个字母?

如何创建一个 3x3 的图像矩阵,每行开头都有一个字母?

当我重新使用 Latex 完成我的硕士论文时,我有一组重复的显微镜图像,需要将它们排列成 3 行(带有指定的样本“名称”)和 3 列,我认为这应该可以在 Latex 中完成,就像在 Powerpoint 中一样(见图)。使用单个图像导入并将它们作为子图放在一个图中完全没有问题,但将名称(A、B、C)放在它们的位置导致我使用了一种小页面方法,我为每个名称和图像创建了一个小页面,但将 3 行分散在整个页面上,我无法按预期定位名称。有人知道这里一般使用什么策略吗?我感觉我走错了方向,很快就开始做无用功。最终,这对以后写论文的工作很有用,所以帮助将不胜感激 :-)

提前谢谢您!

设想图

答案1

让我重复一下以上评论

\documentclass{article}
\usepackage[export]{adjustbox}
\begin{document}
\begin{figure}
\centering
\begingroup
\newcommand{\InclGr}[1]{\includegraphics[width=2cm,height=2cm,valign=t]{#1}}%
\begin{tabular}{c@{~}*3{@{}c}}
A & \InclGr{example-image-duck} & \InclGr{example-image-duck} & \InclGr{example-image-duck}\\
B & \InclGr{example-image-duck} & \InclGr{example-image-duck} & \InclGr{example-image-duck}\\
C & \InclGr{example-image-duck} & \InclGr{example-image-duck} & \InclGr{example-image-duck}\\
\end{tabular}\endgroup
\end{figure}
\end{document}

在此处输入图片描述

答案2

你不需要任何特殊的东西:

\documentclass{article}
\usepackage[export]{adjustbox} % also loads graphicx

\begin{document}

\begin{figure}[htp]
\centering

\makebox[1em][l]{A}%
\includegraphics[width=0.25\textwidth,valign=t]{example-image-1x1}\hspace{1pt}%
\includegraphics[width=0.25\textwidth,valign=t]{example-image-1x1}\hspace{1pt}%
\includegraphics[width=0.25\textwidth,valign=t]{example-image-1x1}\\
\makebox[1em][l]{B}%
\includegraphics[width=0.25\textwidth,valign=t]{example-image-1x1}\hspace{1pt}%
\includegraphics[width=0.25\textwidth,valign=t]{example-image-1x1}\hspace{1pt}%
\includegraphics[width=0.25\textwidth,valign=t]{example-image-1x1}\\
\makebox[1em][l]{C}%
\includegraphics[width=0.25\textwidth,valign=t]{example-image-1x1}\hspace{1pt}%
\includegraphics[width=0.25\textwidth,valign=t]{example-image-1x1}\hspace{1pt}%
\includegraphics[width=0.25\textwidth,valign=t]{example-image-1x1}

\caption{The global caption\label{label}}

\end{figure}

\end{document}

诀窍是valign=t,获得相对于字母的顶部对齐。

为什么1pt?因为这是 的默认值\lineskip

在此处输入图片描述

一个可能的替代方案是,图像之间没有空格,并且图像块居中,而不考虑字母。

\documentclass{article}
\usepackage[export]{adjustbox} % also loads graphicx

\begin{document}

\begin{figure}[htp]
\centering
\setlength{\lineskip}{0pt}

\makebox[0pt][r]{\makebox[1em][l]{A}}%
\includegraphics[width=0.25\textwidth,valign=t]{example-image-1x1}%
\includegraphics[width=0.25\textwidth,valign=t]{example-image-1x1}%
\includegraphics[width=0.25\textwidth,valign=t]{example-image-1x1}\\
\makebox[0pt][r]{\makebox[1em][l]{B}}%
\includegraphics[width=0.25\textwidth,valign=t]{example-image-1x1}%
\includegraphics[width=0.25\textwidth,valign=t]{example-image-1x1}%
\includegraphics[width=0.25\textwidth,valign=t]{example-image-1x1}\\
\makebox[0pt][r]{\makebox[1em][l]{C}}%
\includegraphics[width=0.25\textwidth,valign=t]{example-image-1x1}%
\includegraphics[width=0.25\textwidth,valign=t]{example-image-1x1}%
\includegraphics[width=0.25\textwidth,valign=t]{example-image-1x1}

\caption{The global caption\label{label}}

\end{figure}

\end{document}

在此处输入图片描述

相关内容