\eqref 生成方程的名称而不是数字,并给出“未定义的控制序列”错误

\eqref 生成方程的名称而不是数字,并给出“未定义的控制序列”错误

命令\eqref只显示方程的名称 (SBmetamodel),而不是方程编号(显示在方程旁边),并且我收到错误:“未定义控制序列。...如 \eqref{SBmetamodel} 中所示”。我正在使用 pdfLaTeX 进行编译(使用 biblatex 添加新参考时使用 Biber)。我检查了多个有关\eqref不起作用的问题,但在我的代码中没有发现任何提到的错误。

\documentclass[a4paper, 11pt, onecolumn]{article}
\pagestyle{plain}
\title{...}
\author{...}
\date{}
\usepackage[natbib,style=numeric,citestyle=authoryear]{biblatex}
\addbibresource{ref.bib}
\renewcommand{\refname}{References}

\begin{document}
\maketitle
... as shown in \eqref{SBmetamodel}.
\begin{equation} \label{SBmetamodel} 
y=\beta_{0} + \sum_{j=1}^{k} \beta_{j} x_{j} + \sum_{j=1}^{k-1} \sum_{j'=j+1}^{k} \beta_{j;j'} x_{j} x_{j'} + \sum_{j=1}^{k} \beta_{j;j} x_{j}^{2} + e    
\end {equation}

\printbibliography
\end{document}

答案1

首先最小化你的例子,看看它biblatex是否涉及并且不涉及复杂的方程:

\documentclass{article}

\begin{document}

... as shown in \eqref{SBmetamodel}.
\begin{equation} \label{SBmetamodel}
a=b
\end {equation}

\end{document}

如果你在此上运行 LaTeX,你会得到

! Undefined control sequence.
l.5 ... as shown in \eqref
                          {SBmetamodel}.

这显示了主要问题所在。如果你按回车键,TeX 将忽略未定义的命令并打印“SBmetamodel”,因为它不知道这部分必须以某种方式处理。如果你按h回车键,你会得到

The control sequence at the end of the top line
of your error message was never \def'ed. If you have
misspelled it (e.g., `\hobx'), type `I' and the correct
spelling (e.g., `I\hbox'). Otherwise just continue,
and I'll forget about whatever was undefined.

所以问题是\eqref无法识别。为什么?因为它是由 定义的命令amsmath。添加

\usepackage{amsmath}

您将获得方程式参考(几次运行后),此外还有几种用于数学排版的工具。

切勿忽视 LaTeX 运行过程中的错误。

相关内容