另一个 Latex 图形编号问题

另一个 Latex 图形编号问题

以下是我当前制作数字列表的代码:

\renewcommand{\thefigure}{\thesection-\arabic{figure}}
\listoffigures

我的问题是上面的代码编号不是:1-1、1-2、2-1、2-2,而是 1-1、1-2、2-3、2-4、3-5、4-6 等。我发现我需要更改\arabic{figure}为更有用的内容。有什么建议吗?

编辑

找到了解决方案:

\usepackage{chngcntr}
\counterwithin{figure}{section}

这将数字标记为 1.1、1.2、2.1、2.2 等。我问的问题有些令人困惑。其他代码标记为 1-1、1-2、2-3、2-4。第二个数字不会重新开始新部分的计数。

答案1

无需使用任何其他软件包的解决方案,仅需使用LaTeX核心功能\@addtoreset

(我使用了 OP 中的文档主体代码并添加了正确的\thefigure定义)

\documentclass{article}


\makeatletter
\@addtoreset{figure}{section}
\makeatother
\renewcommand{\thefigure}{\arabic{section}-\arabic{figure}}

\begin{document}
\listoffigures

\section{section1}

\begin{figure}
  \caption{caption1}
\end{figure}

\begin{figure}
  \caption{caption1}
\end{figure}


\section{section2}

\begin{figure}
  \caption{caption3}
\end{figure}

\begin{figure}
  \caption{caption4}
\end{figure}

\end{document}

在此处输入图片描述

答案2

感谢大家的评论。我认为将其标记为已回答将有助于将来供任何人参考。这是一个完整的答案。将原始代码替换为:

\documentclass[11pt,letterpaper]{article}
 \usepackage{amsmath}

 %-----------------------------------
 % This sets up the figure numbering:
 \usepackage{chngcntr}
 \counterwithin{figure}{section}

 %---------------------------------

 \begin{document}
 \listoffigures

 \section{section1}

 \begin{figure}
    \caption{caption1}
 \end{figure}

 \begin{figure}
    \caption{caption1}
 \end{figure}


 \section{section2}

 \begin{figure}
    \caption{caption3}
 \end{figure}

 \begin{figure}
    \caption{caption4}
 \end{figure}

 \end{document}

相关内容