我了解到,为了使标签及其各自的参考资料能够正确编译和显示(对于图形),必须具有\label{}
后 \caption{}
,例如下面:
Figure \ref{k2a}
\begin{figure}[h]
% \caption{Isothermal thick film.}
\begin{center}
\centering
\includegraphics[width= \columnwidth]{/home/userid/Research/Dissertation/2D/Periodic/k2a}
\caption{When $\lambda = \lambda_{max}$ and M=35.1, Pr=7.20, S=100, G=1/3, rupture takes place at t=1280.0 (within 1\% or\citet{Krishnamoorthy1995a})}
\label{k2a}
\end{center}
\end{figure}
但是,是否有任何.sty
/ 包依赖项不允许我的标签正确编译?我运行了latex
两次,但收到了一堆警告,例如Reference on page abc undefined on input line xxx.
,我得到了可怕的?
引用应该在哪里。但是通过问号链接到图是有效的。
这是我的序言,我在这里加载所有软件包。这发生在一个单独的文件中。
\usepackage{caption}
和这个问题有关系吗?
\usepackage{graphicx}
%\usepackage{float}
\usepackage[section]{placeins}
\usepackage{caption}
\captionsetup{margin=10pt,font=small,labelsep=period,labelfont=bf}
% --------
\usepackage{lscape} % allows for landscape tables and figures
\usepackage{paralist} % enancements to list environment
\usepackage{array} % enhancements to array and tabular environments
\usepackage[usenames]{color}
\usepackage{url}
\usepackage{longtable} % multipage tables
\usepackage{ifthen}
\usepackage{ifpdf}
\usepackage{setspace} % easy single or doublespacing
\usepackage{amsmath,amsfonts,amssymb}
\usepackage{rotate}
\usepackage{subfigure}
\usepackage{subfig}
\usepackage{wrapfig}
\usepackage{listings} % for listing computer code such as matlab
\usepackage[bw]{mcode} % for matlab code with listings package
\usepackage[square,comma,sort&compress]{natbib} % enhances bibtex citations
% \usepackage{biblatex}
\usepackage{setspace} % \singlespacing, \onehalfspacing, \doublespacing, ...
%%%%%%%%xyz%%%%%%%%%%%%%%%
\usepackage{epsfig}
\usepackage{epstopdf}
\usepackage{textcomp}
\usepackage{multirow}
%\usepackage{subfig}
\usepackage{paralist}
\usepackage{changepage}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%11022012-START%%%%%%%%%%%%%%
\usepackage[T1]{fontenc} %Useful for file names with underscores in them
\usepackage{float}
\usepackage{grffile}
\newcommand{\hilight}[1]{\colorbox{yellow}{#1}} %To highlight text
\renewcommand{\thefootnote}{\alph{footnote}} %For footnotes
%%%%%%%%%%11022012-STOP%%%%%%%%%%%%%%
答案1
正如评论中所提到的,提供一个最小工作示例(MWE)而不是复制整个序言非常有用(你没有documentclass
在代码中包含它,但这很重要)。
例如,下面的内容可以用 编译通过LaTeX
。
\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage{caption}
\captionsetup{margin=10pt,font=small,labelsep=period,labelfont=bf}
\begin{document}
Figure \ref{k2a}.
\begin{figure}[htp]
\centering
% \includegraphics[width= \columnwidth]{/home/userid/Research/Dissertation/2D/Periodic/k2a}
\caption{When $\lambda = \lambda_{max}$ and M=35.1, Pr=7.20, S=100, G=1/3, rupture takes place at t=1280.0}
\label{k2a}
\end{figure}
\end{document}
顺便说一句,您的整个序言可以在我的计算机上使用该caption
软件包很好地编译,而未定义的引用错误只是因为我没有您的引用而发生的。
上面的评论中提到并总结了一些其他的事情:
- 加载
graphicx
而不是epsfig
- 加载
xcolor
而不是color
- 仅加载
subfig
而不加载折旧subfigure
- 您加载
setspace
两次 - 不要使用
center
浮动中的环境。centering
就足够了 [h]
除非真的需要,否则不要使用 进行放置,在这种情况下是首选[h!]
(我认为)。否则使用类似 的内容[htbp]
,它指示 LaTeX 尝试按该优先级放置浮动here
、top
、 。bottom
page
这l2tabu
文档可能会提供有趣的读物,其中讨论了一些 LaTeX 的过时软件包和选项。