LaTex: 多种方法实现图片复杂排列

文章目录

    • 前言
      • 1. minipage
      • 2. subfloat
      • 3. subfigure
      • 4. tabular

前言

在做论文插图时除简单地横向竖向排列以外,有时需要更加复杂的方式,比如下图。实现的方法多种多样,其中 minipage, subfigure, subfloat, tabular 相对简单实用。

LaTex: 多种方法实现图片复杂排列_第1张图片

1. minipage

适用于对所有子图分别命名时。

\documentclass{
     article}

\usepackage{
     graphicx}
\usepackage{
     subfig}

\begin{
     document}
	
\begin{
     figure*}[!h]
\centering
\begin{
     minipage}[b]{
     0.45\linewidth}
	\subfloat[Husky]{
     \label{
     fig:1(a)}
	\includegraphics[width=2in]{
     dog_1.png}}
\end{
     minipage}
\begin{
     minipage}[b]{
     0.27\linewidth}
	\subfloat[Tibetan Mastiff]{
     \label{
     fig:1(b)}
	\includegraphics[width=1.15in]{
     dog_2.png}} \\  % 换行
	\subfloat[Alaska]{
     \label{
     fig:1(c)}
	\includegraphics[width=1.15in]{
     dog_3.png}} \\  % 换行
	\subfloat[Labrador]{
     \label{
     fig:1(d)}
	\includegraphics[width=1.15in]{
     dog_4.png}}
\end{
     minipage} % 中间不空行代表不换行
\begin{
     minipage}[b]{
     0.2\linewidth}
	\subfloat[Pastoral]{
     \label{
     fig:1(e)}
	\includegraphics[width=2in]{
     dog_5.png}}
\end{
     minipage}

\end{
     figure*}
	
\end{
     document}

LaTex: 多种方法实现图片复杂排列_第2张图片

2. subfloat

适用于一列子图只命名一次时。

\documentclass{
     article}
\usepackage{
     graphicx}
\usepackage{
     subfig}
\usepackage{
     subfloat}

\begin{
     document}
	
\begin{
     figure*}[!h]
\centering
\subfloat[The first dog.]{
     
	\begin{
     minipage}[b]{
     0.45\linewidth}
		\includegraphics[width=2.02in]{
     dog_1.png}
	\end{
     minipage}
} % 不空行表示不换行
\subfloat[The other dogs.]{
     
	\begin{
     minipage}[b]{
     0.4\linewidth}
		\includegraphics[width=1.47in]{
     dog_2.png}\vspace{
     0.75mm}
		\includegraphics[width=1.47in]{
     dog_3.png}\vspace{
     0.75mm}
		\includegraphics[width=1.47in]{
     dog_4.png}
	\end{
     minipage}
}
\subfloat[The last dog.]{
     
	\begin{
     minipage}[b]{
     0.5\linewidth}
		\includegraphics[width=2.02in]{
     dog_5.png}
	\end{
     minipage}
}
\end{
     figure*}
	
\end{
     document}

LaTex: 多种方法实现图片复杂排列_第3张图片

3. subfigure

与 subfloat 同理。注意:subfig 和 subfigure 包不能同时存在。

\documentclass{
     article}
\usepackage{
     graphicx}
\usepackage{
     subfigure}

\begin{
     document}
	
	\begin{
     figure}[!h]
	\centering
	\subfigure[The first dog.]{
     
		\begin{
     minipage}[b]{
     0.3\linewidth}
			\includegraphics[width=1.38in]{
     dog_1.png}
		\end{
     minipage}
	} % 不空行表示不换行
	\subfigure[The other dogs.]{
     
		\begin{
     minipage}[b]{
     0.2\linewidth}
			\includegraphics[width=1in]{
     dog_2.png}\vspace{
     0.75mm}
			\includegraphics[width=1in]{
     dog_3.png}\vspace{
     0.75mm}
			\includegraphics[width=1in]{
     dog_4.png}
		\end{
     minipage}
	}
	\subfigure[The last dog.]{
     
		\begin{
     minipage}[b]{
     0.3\linewidth}
			\includegraphics[width=1.381in]{
     dog_5.png}
		\end{
     minipage}
	}
	\end{
     figure}
	
\end{
     document}

LaTex: 多种方法实现图片复杂排列_第4张图片

4. tabular

适用于每个子图命名或整图命名时,但这种方法存在不对齐问题,尚未解决。

\documentclass{
     article}
\usepackage{
     graphicx}
\usepackage{
     subfigure}
\usepackage{
     multirow}
\usepackage{
     booktabs}
\usepackage{
     array}

\begin{
     document}
	
	\begin{
     figure*}[!h]
		\centering
		\begin{
     tabular}{
     ccc}
		\multirow{
     3}{
     *}{
     \includegraphics[width=0.9in]{
     dog_1.png}} & \includegraphics[width=1in]{
     dog_2.png} & \multirow{
     3}{
     *}{
     \includegraphics[width=0.9in]{
     dog_5.png}} \\
		~ & \includegraphics[width=1in]{
     dog_3.png} & ~ \\
		~ & \includegraphics[width=1in]{
     dog_4.png} & ~ \\
		\end{
     tabular}
		\caption{
     Five dogs.}
	\end{
     figure*}
	
\end{
     document}

LaTex: 多种方法实现图片复杂排列_第5张图片

你可能感兴趣的:(latex,论文插图,图片分布)