我知道我在这里做了一些愚蠢的事情但我不明白。
我正在创建一个.tex
带有标题的文件:
%% XXXXXXXXXXXXXX created this file.
\documentclass[english]{article}
\usepackage{avant}
\usepackage[T1]{fontenc}
\usepackage{geometry}
\geometry{verbose,tmargin=2cm,bmargin=2cm,lmargin=2cm,rmargin=2cm,headheight=1cm,headsep=1cm,footskip=1cm}
\usepackage{fancyhdr}
\pagestyle{fancy}
\usepackage{color}
\usepackage{babel}
\usepackage{array}
\usepackage{float}
\usepackage{graphicx}
\usepackage{parskip}
\usepackage[bookmarks=true,bookmarksnumbered=false,bookmarksopen=false,
breaklinks=false,pdfborder={0 0 1},backref=false,colorlinks=false]
{hyperref}
\hypersetup{pdftitle={XXXXXX},
pdfauthor={Autogenerated by XXXXXX}}
\providecommand{\tabularnewline}{\\}
\usepackage{color}
\lhead{XXXXXX}
\begin{document}
接下来是几个部分:
\section{\textsf{Section Name}}
每个包含几个表格和图表:
\begin{tabular}{|l|r|r|r|r|r|}
\hline
& 1 Month & 3 Month & 6 Month & Average & Total\tabularnewline
\hline
World&-12.6867&-14.984&-19.1529&-15.9345&-95.6071\tabularnewline
\hline
Data Title&-12.6867&-14.984&-19.1529&-15.9345&-95.6071\tabularnewline
\hline
\end{tabular}
\newline
\vspace*{.25 cm}
\newline
\begin{figure}[h!]
\centering
\includegraphics[scale=.8]{MyGraph}
\caption{World}
\end{figure}
\begin{figure}[h!]
\centering
\includegraphics[scale=.8]{World}
\caption{World}
\end{figure}
每个部分都比一页大得多,但在每个部分之前我都有一个
\newpage
对于简单的(即很少的章节/表格/图表)来说,通过 xelatex 渲染为 pdf 通常是完美的。然而,一旦文档变大,表格总是有序的,而图表却到处都是——几乎是随机的。
我知道我在这里做了(或者没做)一些非常愚蠢的事情。我只是希望所有内容都按照我编写的顺序出现。
有人可以提供任何帮助吗?
答案1
figure
s 是浮动环境,tabular
s 不是。因此tabular
s 会准确地移动到源文件中的位置,但 LaTeX 会将 放置在figure
它认为文档“看起来”最好的位置。
我的理解是,即使环境有[h]
或[h!]
选项,figure
图形也不能总是放在“就在这里”。LaTeX 会不听你的。
解决方法(通过马克门格尔)是为了避免figure
环境:
\newcommand{\figcaption}[1]{
\addtocounter{figure}{1}
{\center Figure \arabic{figure} #1\\ }
\addcontentsline{lof}{figure}{#1}
}
然后,figure
您可以执行以下操作:
\begin{center}
\includegraphics[scale=.8]{MyGraph}
\figcaption{World}
\end{center}
另一个解决方法是破解浮点放置算法。但我不知道该怎么做。
答案2
如果不知道图形和表格浮动有多大,就很难(不可能?)完全诊断问题。([scale=...]
不过,从选项来看,我推测图形非常大。)您可以尝试更改一些 LaTeX 的浮动放置参数,并检查浮动放置问题是否至少得到部分缓解。从以下设置开始:
\renewcommand\topfraction{0.85}
\renewcommand\bottomfraction{0.85}
\renewcommand\textfraction{0.1}
\renewcommand\floatpagefraction{0.85}