编辑

编辑

一个标题下有多个图形。我尝试过将两个图像放在一个标题下的代码。ssubfigure不出现在同一行上。

代码如下:

    \documentclass{article}
    \usepackage[demo]{graphicx}
    \usepackage{caption}
    \usepackage{subcaption}

\begin{document}
        \blindtext \blindtext \blindtext
    \begin{figure}
            \centering
            \begin{subfigure}[b]{0.5\textwidth}
                    \centering
                    \includegraphics[width=\textwidth]{C:/Thesis/Latex/thesis_1(1)/Figures/study.jpeg}
                                    \rule{35em}{0.3pt}
                    \caption{the distribution of the nodes in the study site}
                    \label{fig:sensor3}
            \end{subfigure}%    <-- % added here
            \hfill %% useful if width of each figure is less the .5\textwidth
            \begin{subfigure}[b]{0.48\textwidth}
                    \centering
                    \includegraphics[width=\textwidth]{C:/Thesis/Latex/thesis_1(1)/Figures/coord.jpeg}
                                    \rule{35em}{0.3pt}
                    \caption{the coordinates of nodes according to the Swiss coordinate system}
                    \label{fig:tiger}
            \end{subfigure}
            \caption{The Grand St. Bernard wireless sensor network deployment} \label{fig:Sensor}
                    \FloatBarrier
    \end{figure}
\end{document}

代码出现问题:

在此处输入图片描述

答案1

您需要%在第一个子图后放置一个,因为每个子图的宽度为。如果宽度小于 ,.5\textwidth则可能还需要一个。\hfill.5\textwidth

\documentclass{article}

\usepackage[demo]{graphicx}
\usepackage{caption}
\usepackage{subcaption}
\begin{document}
\begin{figure}
        \centering
        \begin{subfigure}[b]{0.5\textwidth}
                \centering
                \includegraphics[width=\textwidth]{C:/Thesis/Latex/thesis_1(1)/Figures/study.jpeg}
                \caption{the distribution of the nodes in the study site}
                \label{fig:sensor3}
        \end{subfigure}%    <-- % added here
        \hfill %% useful if width of each figure is less the .5\textwidth
        \begin{subfigure}[b]{0.5\textwidth}
                \centering
                \includegraphics[width=\textwidth]{C:/Thesis/Latex/thesis_1(1)/Figures/study_road.jpeg}
                \caption{the coordinates of nodes according to the Swiss coordinate system}
                \label{fig:tiger}
        \end{subfigure}
        \caption{The Grand St. Bernard wireless sensor network deployment} \label{fig:Sensor}
\end{figure}
\end{document}

在此处输入图片描述

但在我看来,使用略小于.5\textwidth(比如说.49\textwidth)的宽度会让它看起来更好。

在此处输入图片描述

编辑

您的问题(现在)是 ,\rule{35em}{0.3pt}您已为其设置了 的长度35em。实际上,子图被放置在 中,minipage其宽度为 。因此,这会导致badbox警告。使用\rule{\textwidth}{0.3pt}(或\linewidth),badboxes 就会消失。

另外,您正在环境\FloatBarrier内部使用figure,这是不应该的。像我的代码一样将其移到外面。

\documentclass{article}
\usepackage[demo]{graphicx}
\usepackage{caption}
\usepackage{subcaption,placeins,blindtext}

\begin{document}
        \blindtext \blindtext \blindtext
    \begin{figure}
            \centering
            \begin{subfigure}[b]{0.5\textwidth}
                    \centering
                    \includegraphics[width=\textwidth]{C:/Thesis/Latex/thesis_1(1)/Figures/study.jpeg}
                                    \rule{\textwidth}{0.3pt}
                    \caption{the distribution of the nodes in the study site}
                    \label{fig:sensor3}
            \end{subfigure}%    <-- % added here
            \hfill %% useful if width of each figure is less the .5\textwidth
            \begin{subfigure}[b]{0.48\textwidth}
                    \centering
                    \includegraphics[width=\textwidth]{C:/Thesis/Latex/thesis_1(1)/Figures/coord.jpeg}
                                    \rule{\textwidth}{0.3pt}
                    \caption{the coordinates of nodes according to the Swiss coordinate system}
                    \label{fig:tiger}
            \end{subfigure}
            \caption{The Grand St. Bernard wireless sensor network deployment} \label{fig:Sensor}
    \end{figure}
    \FloatBarrier %% put this here.
\end{document}

在此处输入图片描述

答案2

其中一个问题似乎是你给\rule命令设置了固定宽度,因此子图比规定的一半更宽\linewidth。我将规则重置为\linewidth子图的宽度。在上面,我%在第一个末尾放了一些符号subfigure(重要:必须有我们使用 \(\alpha\)(即最后一个字符与%符号之间的空格)来消除两个子图之间的空格。

\documentclass{article}
\usepackage{subcaption}
\begin{document}
    \begin{figure}
            \centering
            \begin{subfigure}[b]{0.5\textwidth}
                    \centering
                    \rule{\linewidth}{10em}
            \rule{\linewidth}{0.3pt}
                    \caption{the distribution of the nodes in the study site}
                    \label{fig:sensor3}
            \end{subfigure}%
            \begin{subfigure}[b]{0.5\textwidth}
                    \centering
                    \rule{\linewidth}{6em}
               \rule{\linewidth}{0.3pt}
                    \caption{the coordinates of nodes according to the Swiss coordinate system}
                    \label{fig:tiger}
            \end{subfigure}
            \caption{The Grand St. Bernard wireless sensor network deployment} \label{fig:Sensor}   
    \end{figure}
\end{document}

这将产生以下输出(我用简单的命令替换了图像\rule

在此处输入图片描述

对于出现在图片列表中的子标题:这是软件包的功能subcaptions,而不是错误。据我从软件包文档中看到的那样,没有简单的选项可以关闭它。

答案3

我刚刚删除\FloatBarrier并得到:

在此处输入图片描述

我想这就是你想要的。

答案4

我从来没有使用过subcaption包,但在我看来,该subfigure包对你很有用。

    \documentclass{article}
    \usepackage{graphicx}

    \usepackage{subfigure}


    \begin{document}
    \begin{figure}

    \subfigure [the distribution of the nodes in the study site] {
        \includegraphics[width=0.5\textwidth]{fig2.jpg}
        %\caption{the distribution of the nodes in the study site}
        \label{fig:sensor3}
    }
    \subfigure[The Grand St. Bernard wireless sensor network deployment]{
        \includegraphics[width=0.5\textwidth]{fig1.jpg}
         \label{fig:tiger}
    }
    \caption{The Grand St. Bernard wireless sensor network deployment}
    \label{fig:Sensor}   

    \end{figure}
    \end{document}

我希望这有用。

相关内容