今天遇到引用图片报错的情况,如下
%============== 插入图片 =========
\begin{figure*}[tbp]\label{train_frame} % 引入图片
\centering
\includegraphics[width=0.9\textwidth]{img/}
\caption{AAA}
\end{figure*}
%================================
%开始引用
As shown in Fig.\ref{figure1},
结果报错:
As shown in Fig.\ref{figure1} % 此处报错>>> reference ‘figure1’ on page 2 undefined on input line
我找了许多,有的说是编译的问题,但是我在overleaf 上编译应该没有问题。
解决
后来我发现,不仅仅是这里报错,在第二行 :\label{train_frame} 也有警告:
\begin{figure*}[tbp]\label{train_frame} %此行报错:label without proper reference
查了发现是 \label 必须在 \caption 之后写!!!所以错误的原因是:\label 放在\caption 之前定义,导致\label 定义无效。于是我修改如下,就可以运行了
%============== 插入图片 =========
\begin{figure*}[tbp] % 引入图片
\centering
\includegraphics[width=0.9\textwidth]{img/}
\caption{AAA}
\label{train_frame} % put label after caption
\end{figure*}
%================================
%开始引用
As shown in Fig.\ref{figure1},