在 llncs 类文件中的一个图中并排绘制两个子图

在 llncs 类文件中的一个图中并排绘制两个子图

我想在同一行绘制两个图形。我也在使用llncsSpringer 类文件找到这里我的文档。

我有这两个数字:

\begin{figure}
  \begin{tikzpicture}
\begin{axis}[
ybar,
  symbolic x coords={x1, x2, x3},
  xtick={x1, x2, x3},
ytick={5, 4, 10},
  xticklabel style={rotate=-90},
nodes near coords,
  ylabel={Accuracy (\%)},
width = 6.9cm,
  legend pos= north east]
\addplot [black] coordinates{(x1, 5) (x2, 4) (x3, 10)};
\end{axis}
\end{tikzpicture}
{\footnotesize $\bf Fig. 10.$  The results using gh algo}
\end{figure}



\begin{figure}
      \begin{tikzpicture}
    \begin{axis}[
    ybar,
      symbolic x coords={x1, x2, x3},
      xtick={x1, x2, x3},
    ytick={4, 7, 23},
      xticklabel style={rotate=-90},
    nodes near coords,
      ylabel={Accuracy (\%)},
    width = 6.9cm,
      legend pos= north east]
    \addplot [black] coordinates{(x1, 4) (x2, 7) (x3, 23)};
    \end{axis}
    \end{tikzpicture}
    {\footnotesize $\bf Fig. 10.$  The results using er algo}
    \end{figure}

当我绘制这两个图形时,我总是得到第二个图形在第一个图形下方。我想要的是并排绘制这两个图形。我该如何修改我的代码?

任何帮助都将非常感激!

答案1

在此处输入图片描述

\documentclass{article}
\usepackage{pgfplots}
\usepackage{subcaption}
\pgfplotsset{compat=1.3} 
\usepackage[margin=1in]{geometry}
\captionsetup{compatibility=false}
\begin{document} 

\begin{figure}\small
\begin{minipage}[b]{.5\linewidth}
\centering
\begin{tikzpicture}
\begin{axis}[ybar, 
symbolic x coords={x1, x2, x3},
  xtick={x1, x2, x3},
ytick={5, 4, 10},
  xticklabel style={rotate=-90},
nodes near coords,
  ylabel={Accuracy (\%)},
width = 6.9cm,
  legend pos= north east]
\addplot [black] coordinates{(x1, 5) (x2, 4) (x3, 10)};
\end{axis}
\end{tikzpicture}
\subcaption{The results using gh algo}\label{fig:10a}
\end{minipage}%
%
\begin{minipage}[b]{.5\linewidth}
\centering
\begin{tikzpicture}
 \begin{axis}[ybar,
      symbolic x coords={x1, x2, x3},
      xtick={x1, x2, x3},
    ytick={4, 7, 23},
      xticklabel style={rotate=-90},
    nodes near coords,
      ylabel={Accuracy (\%)},
    width = 6.9cm,
      legend pos= north east]
    \addplot [black] coordinates{(x1, 4) (x2, 7) (x3, 23)};
  \end{axis}
\end{tikzpicture}
\subcaption{The results using er algo}\label{fig:10b}
\end{minipage}
\caption{Comparison of two alorithms}\label{fig:10}
\end{figure}

\end{document}

figure是浮动环境,因此您应该只使用一个环境并将两个图放在其中。您不需要 then footnote,而是需要每个图的标题和整个图的标题。使用subcaption 包裹,这很容易。

实际上,这个问题类似并且可以提供帮助,但是在这里,您需要在单个图中绘制两个图,因此该subcaption包可能是您的选择。

更新

由于llnc.cls与软件包存在一些不兼容性,因此应该在前言中caption添加选项。软件包作者在回答中提到了这一点\captionsetup{compatibility=false}subcaption这个问题

相关内容