在下面的代码中,我在 matlab 中分别生成了每幅图像并将其保存为 .eps。然后,我使用此代码将所有九幅图像组合成 3x3。但是,它们的高度和宽度看起来不同!我该如何解决这样的问题?我无法在 powerpoint 中处理 .eps 图像 !!!。此外,我希望这组子图填满整个页面,但它只填满了页面的一半,我真的希望它们看起来更大。任何帮助都值得感激。提前致谢。
\begin{figure}
\centering
\subfloat\[\]\[\emph{caption pic. 1}.\]
{\includegraphics\[width=.3\textwidth\]{10t10w125x300y}} \quad
\subfloat\[\]\[\emph{caption pic. 2}.\]
{\includegraphics\[width=.3\textwidth\]{10t40w250x400y}} \quad
\subfloat\[\]\[\emph{caption pic. 3}.\]
{\includegraphics\[width=.3\textwidth\]{10t100w340x500y}} \\
\subfloat\[\]\[\emph{caption pic. 4}.\]
{\includegraphics\[width=.3\textwidth\]{30t10w200x400y}} \quad
\subfloat\[\]\[\emph{caption pic. 5}.\]
{\includegraphics\[width=.3\textwidth\]{30t40w350x750y}} \quad
\subfloat\[\]\[\emph{caption pic. 6}.\]
{\includegraphics\[width=.3\textwidth\]{30t100w550x1200y}} \\
\subfloat\[\]\[\emph{caption pic. 7}.\]
{\includegraphics\[width=.3\textwidth\]{50t10w300x600y}} \quad
\subfloat\[\]\[\emph{caption pic. 8}.\]
{\includegraphics\[width=.3\textwidth\]{50t40w600x1100y}} \quad
\subfloat\[\]\[\emph{caption pic. 9}.\]
{\includegraphics\[width=.3\textwidth\]{50t100w600x1500y}}
\caption{Insert caption.}
\label{fig:subfig}
\end{figure}][1]
答案1
测量其中一张图片的高度,并将其用于其余图片的高度。
\documentclass{article}
\usepackage{graphicx}
\usepackage{subfig}
\newlength{\common}
\begin{document}
\noindent\rule{\textwidth}{1pt}
\begin{figure}[htp]
\settoheight{\common}{\includegraphics[width=.3\textwidth]{example-image}}% get height
\subfloat[picture 1]{\includegraphics[width=.3\textwidth,height=\common]{example-image}}\hfill
\subfloat[picture 2]{\includegraphics[width=.3\textwidth,height=\common]{euclid-1.jpg}}\hfill
\subfloat[picture 3]{\includegraphics[width=.3\textwidth,height=\common]{images/supper.png}}
\end{figure}
\end{document}
答案2
对于图像大小,您可以阅读 Mike Renfro 的评论。如果 Matlab 没有生成相同大小的图像,您只能通过以下方式调整它们的大小:
\includegraphics[width=0.32\hize,height=0.32\hsize]{your image}
但这会改变图像的原始纵横比,因此它们会变得非常丑陋。如果您的纸张尺寸为 A$,则其高度是宽度的 1,441 倍。如果您的图像具有相同的纵横比,那么它们将更好地填满页面,就像它们是正方形一样。
解决此问题的一种方法是局部扩大文本宽度。例如,借助 changepage 包。只需在序言中添加
\usepackage[strict]{changepage}
并将图片内容放入
\begin{adjustwidth*}{}{-<some size>}
... figure content ....
\end{adjustwidth}
有关详细信息,请阅读包文档。
我怀疑您在问题中提供的代码是否有效。因此我构建了一个新的 MWE,您可以使用它进行进一步的实验。
\documentclass{article}
\usepackage{graphicx}
\usepackage[labelsep=space,
labelfont={sf,bf},
textfont=sf]{subfig}
\begin{document}
\begin{figure*}
\subfloat[picture 1 \label{fig:picture 1}]
{\includegraphics[width=0.32\textwidth]{example-image}}
\hfill
\subfloat[picture 2 \label{fig:picture 2}]
{\includegraphics[width=0.32\textwidth]{example-image}}
\hfill
\subfloat[picture 3 \label{fig:picture 3}]
{\includegraphics[width=0.32\textwidth]{example-image}}
\vskip\baselineskip
\subfloat[picture 4 \label{fig:picture 4}]
{\includegraphics[width=0.32\textwidth]{example-image}}
\hfill
\subfloat[picture 5 \label{fig:picture 5}]
{\includegraphics[width=0.32\textwidth]{example-image}}
\hfill
\subfloat[picture 6 \label{fig:picture 6}]
{\includegraphics[width=0.32\textwidth]{example-image}}
\vskip\baselineskip
\subfloat[picture 7 \label{fig:picture 7}]
{\includegraphics[width=0.32\textwidth]{example-image}}
\hfill
\subfloat[picture 8 \label{fig:picture 8}]
{\includegraphics[width=0.32\textwidth]{example-image}}
\hfill
\subfloat[picture 9 \label{fig:picture 9}]
{\includegraphics[width=0.32\textwidth]{example-image}}
\caption{Insert caption}
\label{fig:mean and std of nets}
\end{figure*}
\end{document}
嗯,这可能不是真正的答案,但我希望,它能引导你找到它。