为什么使用 \ref {} 来计算方程式可以行得通,但当用来引用图像时却得到 (??) 的结果?

为什么使用 \ref {} 来计算方程式可以行得通,但当用来引用图像时却得到 (??) 的结果?

我在我的文档中使用了 {fei} 类,我的序言非常简单,如下所示

\documentclass[rascunho]{fei}
\usepackage[utf8]{inputenc}
\usepackage{gensymb}
\usepackage{cancel}

当使用 \ref{} 命令调用方程式时,如下例所示,结果几乎是预期的:

\begin{equation}
\nu_{max} \propto T \Leftrightarrow \nu_{max}=Constante_{2}.T
\label{eq4}
\end{equation}
onde, para um corpo negro, a equação (\ref{eq3})

上述代码的结果

但是当使用完全相同的命令来调用图形时我收到错误,代码如下:

\begin{figure}[h!]
\center
\includegraphics[scale=0.9]{fig15.jpg}
\label{fig15}
\end{figure}

这就是我用数字表示的结果

我参考的任何方程式都可以正常工作,但我尝试使用相同方法的每一个图形都显示此错误,我读到编译两次或更多次可能能够解决问题,但我尝试了几次并且问题仍然存在。

我很确定这一定是某个非常简单且容易修复的问题,但无论我怎么尝试都找不到......

答案1

您可以\label在 LaTeX 生成数字后使用;figure环境本身不会生成数字:它是\caption会生成数字的。

\documentclass[rascunho]{fei}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{amsmath}
\usepackage{siunitx}
\usepackage{graphicx}

\sisetup{output-decimal-marker={,}}

\begin{document}

\begin{equation}
\nu_{\mathrm{max}} \propto T \Leftrightarrow \nu_{\mathrm{max}}=
\mathrm{Constante}_{2}\cdot T
\label{eq:nu-max}
\end{equation}
onde, para um corpo negro, a equação~(\ref{eq:nu-max})
vale \SI{2,898e-3}{\meter\kelvin}.

\begin{figure}[htp]
\centering

\includegraphics[width=3cm]{example-image}

\caption{Esta é uma legenda}
\label{fig:example}

\end{figure}

O gráfico (A) de figura~\ref{fig:example} mostra a distribuição de Boltzmann.

\end{document}

现在引用可以起作用了。

在此处输入图片描述

其他几点。(低)句号从不用于表示乘法。数学公式中的文本插入应该直立。对于常数和其他类似情况,最好使用siunitx保证整个文档外观统一的符号(例如,开尔文的符号是大写字母 K)。如果您希望在单位之间有明确的乘法符号,请将\sisetup序言中的命令更改为

\sisetup{
  output-decimal-marker={,},
  inter-unit-product=\ensuremath{{}\cdot{}},
}

输出将变成

在此处输入图片描述

文档代码的改变。

将单词“equação”和“figura”与参考编号联系起来。

使用是不正确的\center;最好使用\centering或根本不使用,因为该类设置了左对齐的标题,所以左对齐的图像可能更适合。

相关内容