Latex 中两个图形的水平对齐

Latex 中两个图形的水平对齐

我想绘制两个相邻的图形 (a) (b)。但是此代码垂直显示 (a) (b)。

\begin{figure}[htp] 
\centering

\subfloat[data a]{%
\includegraphics[width=0.4\textwidth]{fig_a}%
\label{fig:a}%
}

\subfloat[data b]{%
\includegraphics[width=0.4\textwidth]{fig_b}%
\label{fig:b}%
}

\caption{all the data}
\end{figure}

我怎样才能改变这一点?

答案1

在正确的地方采取一些战略%可以帮助你得到你想要的东西。

\documentclass{article}
\usepackage[demo]{graphicx}
\usepackage{subfig}

\begin{document}
\begin{figure}[htp] 
    \centering
    \subfloat[data a]{%
        \includegraphics[width=0.4\textwidth]{fig_a}%
        \label{fig:a}%
        }%
    \hfill%
    \subfloat[data b]{%
        \includegraphics[width=0.4\textwidth]{fig_b}%
        \label{fig:b}%
        }%
    \caption{all the data}
\end{figure}

\end{document}

在此处输入图片描述

答案2

感谢您的帮助。我刚刚发现,如果我想让 2 个图表在其中一列水平对齐,您的解决方案是有效的。如果我想让它在整整 2 列上对齐,我必须使用 figure* 而不是 figure。所以现在对我有用的代码是:

\begin{figure*}[htp] 
    \centering
    \subfloat[data a]{%
        \includegraphics[width=0.5\linewidth]{a}%
        \label{fig:a}%
        }%
    \hfill%
    \subfloat[data b]{%
        \includegraphics[width=0.5\linewidth]{b}%
        \label{fig:b}%
        }%
    \caption{all the data}
\end{figure*}

相关内容