我使用以下几行在我的文档中包含一个 .tikz 图形:
\documentclass{article}
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{graphicx}
\usepackage{pgfplots}
\pgfplotsset{compat=1.9}
\usetikzlibrary{plotmarks}
\begin{document}
\newpage
\null
\begin{figure}[h]
\centering
\input{pic/evaluation1}
\caption{Evaluation 1.}
\label{evaluation1}
\end{figure}
\begin{figure}[h]
\centering
\input{pic/evaluation2}
\caption{Evaluation 2.}
\label{evaluation 2}
\end{figure}
\begin{figure}[h]
\centering
\input{pic/evaluation3}
\caption{Evaluation 3.}
\label{evaluation3}
\end{figure}
\end{document}
我希望前两个图位于一页上,第三个图位于下一页的顶部。但是,此 LaTeX 代码让第一个图位于页面顶部,而其他两个图位于下一页。
答案1
我建议您将前两个图表放在一个figure
环境中,并将其声明[p]
为放置说明符。这样,图表将放在同一页上。对于其余figure
环境,将放置说明符从 更改为 ,[h]
以[t!]
确保将其放置在包含前两个图表的页面之后的页面顶部。
修改后的代码将如下所示——请注意,我无法发布有意义的屏幕截图,因为我无法访问文件evaluation1.tex
、evaluation2.tex
和evaluation3.tex
:
\documentclass{article}
\usepackage{amsmath,amssymb,graphicx}
\usepackage{pgfplots}
\pgfplotsset{compat=1.9}
\usetikzlibrary{plotmarks}
\begin{document}
\begin{figure}[p]
\centering
\input{pic/evaluation1}
\caption{Evaluation 1.}
\label{evaluation1}
\vspace{1cm} % choose a suitable amount of vertical whitespace
\input{pic/evaluation2}
\caption{Evaluation 2.}
\label{evaluation2}
\end{figure}
\begin{figure}[t!]
\centering
\input{pic/evaluation3}
\caption{Evaluation 3.}
\label{evaluation3}
\end{figure}
\end{document}