我正在使用 fleqn 和 align 使我的论文中的方程式居中,但我注意到我无法获得正确的编号。
\documentclass[twoside]{article}
\usepackage{hyperref}
\usepackage{mathtools, nccmath}
\usepackage{geometry}
\geometry{
inner=37.125mm,
outer=33.4125mm,
top=1.5cm,
bottom=1.5cm,
heightrounded,
% bindingoffset=0.5cm,
% marginparwidth=51pt,
% marginparsep=17pt,
% headsep=24pt,
}
\begin{document}
\section{One}
Something something something
\subsection{SubSection}
as shown in eq. \eqref{eq:cost_dlp}:
\begin{fleqn}[\parindent] \label{eq:cost_dlp}
\begin{align}
& C_{}=C_\mathrm{}+C_\mathrm{}+C_\mathrm{}+C_\mathrm{}+C_\mathrm{}
\end{align}
\end{fleqn}
\end{document}
答案1
解释相当简单:你没有将公式标签放在公式环境中,因此它引用当前部分。不相关,但如果你使用\cref
from cleveref
,你甚至不必输入equation
。此外,hyperref
应该作为最后一个包加载,只有极少数例外(`cleverref 就是其中之一):
\documentclass[twoside]{article}
\usepackage{mathtools, nccmath}
\usepackage{geometry}
\geometry{
inner=37.125mm,
outer=33.4125mm,
top=1.5cm,
bottom=1.5cm,
heightrounded,
% bindingoffset=0.5cm,
% marginparwidth=51pt,
% marginparsep=17pt,
% headsep=24pt,
}
\usepackage{hyperref}
\usepackage{cleveref}
\begin{document}
\section{One}
Something something something
\subsection{SubSection}
as shown in \cref{eq:cost_dlp}:
\begin{fleqn}[\parindent]
\begin{align}\label{eq:cost_dlp}
& C_{}=C_\mathrm{}+C_\mathrm{}+C_\mathrm{}+C_\mathrm{}+C_\mathrm{}
\end{align}
\end{fleqn}
\end{document}
答案2
\label{…}
始终引用使用设置的最后一个计数器\refstepcounter{…}
。显示公式计数器在显示开始时逐步增加,因此只需将 放在\label{…}
公式环境中即可:
\documentclass{article}
\usepackage{mathtools, nccmath}
\begin{document}
\section{One}
Something something something
\subsection{SubSection}
as shown in eq. \eqref{eq:cost_dlp}:
\begin{fleqn}[\parindent]
\begin{align}
\label{eq:cost_dlp}
& C_{}=C_\mathrm{}+C_\mathrm{}+C_\mathrm{}+C_\mathrm{}+C_\mathrm{}
\end{align}
\end{fleqn}
\end{document}
答案3
将 放在\label
等式末尾:
& C_{}=C_\mathrm{}+C_\mathrm{}+C_\mathrm{}+C_\mathrm{}+C_\mathrm{} \label{eq:cost_dlp}
如果 中有多个方程式align
,则将每个方程式的标签放在 之前\\
或末尾。