回忆录中的子人物

回忆录中的子人物

我正在使用pgfplots来绘制图表memoir。我对子图绘图有问题。

\documentclass{memoir}

\usepackage{pgfplots}
\usepackage{tikz}
\usepackage{subfigure}

\begin{document}

\begin{figure}
\centering
\subfigure{
\begin{tikzpicture}
\begin{axis}[grid=major,xmin=0,xmax=1,ymin=0,ymax=0.5]
\addplot[color=black] coordinates {
(0,0.2)
(0.5,0.2)
(1,0)
};
\end{axis}
\end{tikzpicture}}
\subfigure{
\begin{tikzpicture}
\begin{axis}[grid=major,xmin=0,xmax=1,ymin=0,ymax=0.5]
\addplot[color=black] coordinates {
(0,0.5)
(1,0)
};
\end{axis}
\end{tikzpicture}}
\end{figure}

\end{document}

但是代码无法编译成功。有人知道如何修改代码吗?

答案1

作为文档类,memoir提供了创建子浮点数的功能。因此,使用也提供此功能的包可能会导致问题(一般来说)。以下是如何使用提供的接口获得所需结果memoir

在此处输入图片描述

\documentclass{memoir}% http://ctan.org/pkg/memoir
\usepackage{pgfplots,tikz}% http://ctan.org/pkg/{pgfplots,pgf}
\newsubfloat{figure}% Create subfloat in figure environment

\begin{document}

\begin{figure}
  \centering
  \subbottom[First]{%
    \begin{tikzpicture}
      \begin{axis}[grid=major,xmin=0,xmax=1,ymin=0,ymax=0.5]
      \addplot[color=black] coordinates {
        (0,0.2)
        (0.5,0.2)
        (1,0)
      };
      \end{axis}
    \end{tikzpicture}}
  \subbottom[Second]{%
    \begin{tikzpicture}
      \begin{axis}[grid=major,xmin=0,xmax=1,ymin=0,ymax=0.5]
      \addplot[color=black] coordinates {
        (0,0.5)
        (1,0)
      };
      \end{axis}
    \end{tikzpicture}}
\end{figure}

\end{document}

\newsubfloat{<fenv>}创建适当的计数器/宏以允许内部的子浮点数<fenv>。/然后用于包含带有底部/顶部标题的子浮点数\subbottom\subtop

如需了解更多详细信息,请阅读10.3 多个浮点数(第 177 页)和10.9 子字幕(第 194 页)或memoir用户手册

答案2

计数器\c@lofdepth\c@lotdepth由 定义subfigure,但已被 定义memoir,这会导致错误。您可以在加载之前取消定义它们来修复它subfigure

\documentclass{memoir}
 ...
\makeatletter
\let\c@lofdepth\relax
\let\c@lotdepth\relax
\makeatother
\usepackage{subfigure}

顺便说一句,我建议使用较新的subfig软件包,它来自同一作者,因为subfigure已经过时了。另一个非常好的 subfigures 软件包是subcaption

相关内容