以特定方式 5 个数字

以特定方式 5 个数字

我需要按以下方式排列 5 个数字:

在此处输入图片描述

我尝试使用它\subfigure\begin{subfigure}并在表格内放入一个表格,\begin{tabular}但我无法让它看起来像我需要的那样。

每个图形都有自己的标题,这一点很重要。

答案1

像这样?

在此处输入图片描述

借助tabularx表环境:

\documentclass{article}
\usepackage{graphicx}
\usepackage{multirow,tabularx}
\renewcommand\tabularxcolumn[1]{m{#1}}

\begin{document}
    \begin{figure}
\begin{tabularx}{\textwidth}{cXX}
\multirow{2}{0.4\textwidth}{\includegraphics[width=\hsize]{example-image}
\caption{a}
            }
    &   \includegraphics[width=\hsize]{example-image-a} 
        \caption{b} 
        &   \includegraphics[width=\hsize]{example-image-b}
            \caption{c}                                      \\
    &   \includegraphics[width=\hsize]{example-image-a}
        \caption{d}
        &   \includegraphics[width=\hsize]{example-image-b}
            \caption{e}                                      
\end{tabularx}   
    \end{figure}

\end{document}

附录: 现在我猜你可能喜欢将图像的顶部和底部对齐。这可以通过估算图像高度和使用包来简单实现,adjustbox或者通过更复杂的方法测量右图(图 c + c 的标题 + 图 e)的高度,并借助savebox

在此处输入图片描述

梅威瑟:

\documentclass{article}
\usepackage{graphicx}
\usepackage{multirow,tabularx}
%\renewcommand\tabularxcolumn[1]{m{#1}}
\usepackage[export]{adjustbox}
\usepackage{calc}

\usepackage{showframe}% only for showing page layout
\newsavebox{\twofigures}

\begin{document}
    \begin{figure}
\savebox{\twofigures}{\begin{tabularx}{0.3\textwidth-\tabcolsep}{X}
                        \includegraphics[width=\hsize]{example-image}
                        \caption{c}         \\
                        \includegraphics[width=\hsize]{example-image}
                      \end{tabularx}}

\begin{tabularx}{\textwidth}{cXX}
\multirow{2}{0.4\textwidth}{%
    \includegraphics[width=\hsize,%
                     height=\ht\twofigures+\dp\twofigures,%
                     valign=T]  {example-image}
    \caption{a}

            }
    &   \includegraphics[width=\hsize,valign=T]{example-image-a} 
        \caption{b} 
        &   \includegraphics[width=\hsize,valign=T]{example-image-b}
            \caption{c}                                      \\
    &   \includegraphics[width=\hsize,valign=T]{example-image-a}
        \caption{d}
        &   \includegraphics[width=\hsize,valign=T]{example-image-b}
            \caption{e}                                      
\end{tabularx}   
    \end{figure}
\end{document}

附录2: 在这种情况下,对于图像,人们喜欢利用整个文本宽度,并添加列的@{}开始和结束规范:{@{}cXX@{}},然后您需要相应地更改存储的图像:不减去表格宽度\tabcolsep

在此处输入图片描述

梅威瑟:

\documentclass{article}
\usepackage{graphicx}
\usepackage{multirow,tabularx}
\usepackage[export]{adjustbox}
\usepackage{calc}

\usepackage{showframe}
\newsavebox{\twofigures}

\begin{document}
    \begin{figure}
\savebox{\twofigures}{\begin{tabularx}{0.3\textwidth}{X}% <-- changed
                        \includegraphics[width=\hsize]{example-image}
                        \caption{c}         \\
                        \includegraphics[width=\hsize]{example-image}
                      \end{tabularx}}

\begin{tabularx}{\textwidth}{@{}cXX@{}}% <-- changed
\multirow{2}{0.4\textwidth}{%
    \includegraphics[width=\hsize,%
                     height=\ht\twofigures+\dp\twofigures,%
                     valign=T]  {example-image}
\caption{a}
            }
    &   \includegraphics[width=\hsize,valign=T]{example-image-a} 
        \caption{b} 
        &   \includegraphics[width=\hsize,valign=T]{example-image-b}
            \caption{c}                                      \\
    &   \includegraphics[width=\hsize,valign=T]{example-image-a}
        \caption{d}
        &   \includegraphics[width=\hsize,valign=T]{example-image-b}
            \caption{e}                                      
\end{tabularx} 
    \end{figure}
\end{document}

添加的showframe包仅用于显示页面布局。通过它的可见性,很容易比较第二个和第三个解决方案之间的差异。在实际应用中必须将其删除。

相关内容