我有两个子图,我需要使用图 \ref{fig1.1a:chap1} 和图 \ref{fig1.1b:chap1} 在文本(例如图 1.1(a) 和图 1.1(a))中引用它们。输出未出现。相反,出现了一个双问号(图 ??)。如何解决这个问题?
\documentclass[12pt, a4paper, oneside]{Thesis}
\usepackage{amsmath}
\usepackage{graphicx}
\usepackage{caption}
\usepackage{subfigure}
\begin{document}
\begin{figure}
\centering
\begin{tabular}{@{}c@{}}
\includegraphics[width=\linewidth,height=125pt]{enrollment} \label{fig1.1a:chap1} \\[\abovecaptionskip]
\small (a) Enrollment phase
\end{tabular}
\vspace{\floatsep}
\begin{tabular}{@{}c@{}}
\includegraphics[width=\linewidth,height=125pt]{verification} \label{fig1.1b:chap1} \\[\abovecaptionskip]
\small (b) Verification phase
\end{tabular}
\caption{Mode of operations in a biometric authentication system}\label{fig1.1:chap1}%
\end{figure}
\end{document}
答案1
您展示两个子图的方法至少是不寻常的,坦率地说是错误的:
- 你加载了过时的包
subfigure
但没有使用它。加载它是不够的,你应该在图形组合中使用它的环境,然后至少编译文档两次 - 包
subfigure
已被弃用。请subfig
改用它或subcaption
(功能更强大)。 - 引用作用于标签,标签位于标题之后。您的代码示例中不存在这种情况
- 不清楚,图像中使用的表格的用途是什么
看看下面的例子是否适合你(我没有使用
thesis
文档类,因为我不知道你使用哪一个。但这不会影响获得的结果)。经过两次编译,你将获得工作参考\documentclass{report} % <--- instead of "thesis" which i haven't \usepackage{amsmath} \usepackage{graphicx} \usepackage{caption} \usepackage{subcaption} % <--- it is not compatible with "subfigure" % with it you had to replace "subfigure" \usepackage{lipsum} % <--- for dummy text \begin{document} \lipsum[1] \begin{figure}[htb] % <--- \centering \begin{subfigure}[b]{0.6\linewidth} % <--- \includegraphics[width=\linewidth]{example-image-duck} \caption{Enrollment phase} % <--- \label{fig1.1a:chap1} \end{subfigure} % <--- \begin{subfigure}[b]{0.6\linewidth} % <--- \includegraphics[width=\linewidth]{example-image-duck} \caption{Verification phase} % <--- \label{fig1.1b:chap1} \end{subfigure} % <--- \caption{Mode of operations in a biometric authentication system} \label{fig1.1:chap1}% \end{figure} Test of references: see subfigures \ref{fig1.1a:chap1} and \ref{fig1.1b:chap1} in figure \ref{fig1.1:chap1}. \end{document}
与% <---
您的文档示例相比,有明显的变化。如果您喜欢宽图像,则可将宽度更改subfigure
为所需宽度。
附录:
您可能很幸运,可以使用subfigure
包... :-) :
\documentclass{report}
\usepackage{amsmath}
\usepackage{graphicx}
\usepackage{caption}
\usepackage{subfigure} % <---
\usepackage{lipsum}
\begin{document}
\lipsum[1]
\begin{figure}[htb] % <---
\centering
\subfigure[Enrollment phase \label{fig1.1a:chap1}]%
{
\includegraphics[width=0.6\linewidth]{example-image-duck}
}
\subfigure[Verification phase \label{fig1.1b:chap1}]%
{
\includegraphics[width=0.6\linewidth]{example-image-duck}
}
\caption{Mode of operations in a biometric authentication system}
\label{fig1.1:chap1}%
\end{figure}
Test of references: see subfigures \ref{fig1.1a:chap1} and \ref{fig1.1b:chap1} in figure \ref{fig1.1:chap1}.
\end{document}
结果与以前类似,但是您可能会遇到新的问题。