我的工作中需要对方程式进行特殊编号,因此我将其设置为类似于 egreg 编写的数字编号这里
这是我的 MWE:
\documentclass[12pt, a4paper, oneside, onecolumn]{article}
\usepackage{mathtools}
%numeriranje jednadžbe
\renewcommand{\theequation}{%
\ifnum\value{subsection}=0
\thesection.\arabic{figure}%
\else
\ifnum\value{subsubsection}=0
\thesubsection.\arabic{figure}%
\else
\thesubsubsection.\arabic{figure}%
\fi
\fi
}
\begin{document}
\section{Section}
\begin{equation}
\begin{split}
R' &= R/255 \\
G' &= G/255 \\
B' &= B/255
\end{split}
\end{equation}
\subsection{Subsection}
\begin{equation}
\begin{split}
C_{max} &= max(R', G', B') \\
C_{min} &= min(R', G', B') \\
\Delta &= C_{max} - C_{min}
\end{split}
\end{equation}
\end{document}
它给了我这种类型的编号,这很好,但是方程的数量是错误的:
如果我在我的文档中使用它,它看起来像这样:
这2.1.2.
部分没问题,这是我的子小节的编号,但其余部分是错误的。应该是2.1.2.1
,2.1.2.2
你能告诉我我在这里做错了什么吗?
答案1
您的 MWE 中的代码存在两个独立的问题:
您需要将
\arabic{equation}
而不是附加\arabic{figure}
到 的各种重新定义中\theequation
。David Carlisle 已经指出了这一点。(这就是为什么前几个方程编号以 结尾的原因.0
。我猜您的文档figure
在您展示的第二批方程之前有两个环境;这是对为什么两个方程编号的最后一位数字都停留在 的最直接解释.2
。)你遗漏了以下陈述(改编自@egreg 之前的回答):
\usepackage{chngcntr} \counterwithin*{equation}{section} \counterwithin*{equation}{subsection} \counterwithin*{equation}{subsubsection}
如果不包含这些命令,则复合方程“数字”的最后一位数字将会从 1 增加到 2 再增加到 3 等等,无论方程处于哪个分段级别。
离题评论:不要以普通的数学斜体模式排版“max”和“min”。在它们作为数学运算符出现的地方使用\max
和,并在下标实例中写和。如果您有很多这样的实例,您可以在序言中定义一些宏,例如,并在整个文档中使用。\min
C_{\textup{max}}
C_{\textup{min}}
\newcommand{\Cmax}{C_{\textup{max}}}
\Cmax