我试图将 8 个子图堆叠在 2 行上,以便它们在页面上垂直对齐。但是,顶部行似乎均匀分布在页面上,底部行也均匀分布,但间隙小得多。我对 tex 还不太熟悉,所以如果我的代码很糟糕,请多包涵。
\documentclass[10pt,a4paper]{memoir}
\usepackage[utf8]{inputenc}
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{graphicx}
\newsubfloat{figure}
\begin{document}
\begin{figure}[ht!]
\begin{minipage}{0.23\textwidth}
\centering
\subtop[]{\includegraphics[height=0.16\textheight]{Figures/Q1.png}\label{sf:Q1}}
\end{minipage}
\begin{minipage}{0.23\textwidth}
\centering
\subtop[]{\includegraphics[height=0.16\textheight]{Figures/Q1.png}\label{sf:Q1}}
\end{minipage}
\begin{minipage}{0.23\textwidth}
\centering
\subtop[]{\includegraphics[height=0.16\textheight]{Figures/Q1.png}\label{sf:Q1}}
\end{minipage}
\begin{minipage}{0.23\textwidth}
\centering
\subtop[]{\includegraphics[height=0.16\textheight]{Figures/Q1.png}\label{sf:Q1}}
\end{minipage}
\begin{minipage}{0.23\textwidth}
\centering
\subtop[]{\includegraphics[height=0.16\textheight]{Figures/Q1.png}\label{sf:Q1}}
\end{minipage}
\begin{minipage}{0.23\textwidth}
\centering
\subtop[]{\includegraphics[height=0.16\textheight]{Figures/Q1.png}\label{sf:Q1}}
\end{minipage}
\begin{minipage}{0.23\textwidth}
\centering
\subtop[]{\includegraphics[height=0.16\textheight]{Figures/Q1.png}\label{sf:Q1}}
\end{minipage}
\begin{minipage}{0.23\textwidth}
\centering
\subtop[]{\includegraphics[height=0.16\textheight]{Figures/Q1.png}\label{sf:Q1}}
\end{minipage}
\caption[contents]{caption}
\label{fig:Qual}
\end{figure}
\end{document}
我复制粘贴了每个 sf 的代码,所以我不明白为什么它在每一行上的行为会有所不同。所有 8 幅图像的分辨率都相同(1780x1752)。显然我遗漏了一些简单的东西……有什么帮助吗?
答案1
您的图片比迷你页面的宽度要宽。如果您将图片的宽度调整到迷你页面的宽度,则图片不再重叠。请参阅:
\documentclass[10pt,a4paper]{memoir} \usepackage[utf8]{inputenc}
\usepackage{amsmath} \usepackage{amsfonts} \usepackage{amssymb}
\usepackage{graphicx} \newsubfloat{figure} \begin{document}
\begin{figure}[ht!] \begin{minipage}{0.23\textwidth} \centering
\subtop[]{\includegraphics[width=\hsize]{example-image}\label{sf:Q1}}
\end{minipage} \begin{minipage}{0.23\textwidth} \centering
\subtop[]{\includegraphics[width=\hsize]{example-image}\label{sf:Q1}}
\end{minipage} \begin{minipage}{0.23\textwidth} \centering
\subtop[]{\includegraphics[width=\hsize]{example-image}\label{sf:Q1}}
\end{minipage} \begin{minipage}{0.23\textwidth} \centering
\subtop[]{\includegraphics[width=\hsize]{example-image}\label{sf:Q1}}
\end{minipage}
\begin{minipage}{0.23\textwidth} \centering
\subtop[]{\includegraphics[width=\hsize]{example-image}\label{sf:Q1}}
\end{minipage} \begin{minipage}{0.23\textwidth} \centering
\subtop[]{\includegraphics[width=\hsize]{example-image}\label{sf:Q1}}
\end{minipage} \begin{minipage}{0.23\textwidth} \centering
\subtop[]{\includegraphics[width=\hsize]{example-image}\label{sf:Q1}}
\end{minipage} \begin{minipage}{0.23\textwidth} \centering
\subtop[]{\includegraphics[width=\hsize]{example-image}\label{sf:Q1}}
\end{minipage} \caption[contents]{caption} \label{fig:Qual}
\end{figure} \end{document}
在这种情况下,您可以省略小页面,直接将图像放入图形中。如下所示:
\subtop[]{\includegraphics[width=0.23\hsize]{example-image}\label{sf:Q1}}\hfill
\subtop[]{\includegraphics[width=0.23\hsize]{example-image}\label{sf:Q1}}\hfill
\subtop[]{\includegraphics[width=0.23\hsize]{example-image}\label{sf:Q1}}\hfill
\subtop[]{\includegraphics[width=0.23\hsize]{example-image}\label{sf:Q1}}
在前三幅图像后添加 \hfill 后,我获得了它们之间更大的间隙。
由于我没有您的原始图片,因此我使用示例图片。下图中的前四张图片是由没有 minipages 的代码生成的,并在图片之间引入了 \hfill。
编辑: 当然,我手动将图像分成两行。