我的文档中放置了多个图形(所有图形都使用了 [htbp]、[ht] 等,并且放置正确)。最后一个图形占用一个单独的页面(这没问题),但它位于此页面的中心,这看起来很奇怪,因为图形相当小。
有什么办法可以将这个图放在此页面顶部吗?如上所述,它是一个单独的页面,也是本章的最后一页。
我实际上无法提供一个最小的例子(因为我猜测位置取决于我之前的图形),但这是我为该图形使用的代码(我尝试过 [ht]、[ht!]、[htbp] 等,但都不起作用 - 我在编译之前也删除了 .aux 文件):
\begin{figure}[t!]
\centering
\begin{tabularx}{\columnwidth}{cc}
\subfloat[Results 1]
{ \centering \includegraphics[width=0.47\textwidth,height=0.47\textheight,keepaspectratio]{images/plot1}
}
&
\subfloat[Results 2]
{ \centering \includegraphics[width=0.47\textwidth,height=0.47\textheight,keepaspectratio]{images/plot2}
}
\end{tabularx}
\caption{Blabla}
\end{figure}
提前致谢!
答案1
只需在标题后放置一个足够大的值,\vspace
即可将其推到顶部。指定\vspace
太大也可以。在这里,我在[p]
页面上放置了一个图形以保证“糟糕”的行为,但在标题后添加了一个 128 英寸\vspace
,夸张地表明,如果实际长度足够大,则实际长度无关紧要。
\documentclass{article}
\usepackage[demo]{graphicx}
\begin{document}
\begin{figure}[p]
\centering
\includegraphics[width=0.47\textwidth,height=0.47\textheight]{file}
\caption{Blabla}
\vspace{128in}
\end{figure}
\end{document}
为了避免因浮点数过大而产生的“警告”(如果这让你感到困扰),可以\vspace
在图形内容之前添加负数,如下所示
\documentclass{article}
\usepackage[demo]{graphicx}
\begin{document}
\begin{figure}[p]
\vspace{-128in}
\centering
\includegraphics[width=0.47\textwidth,height=0.47\textheight]{file}
\caption{Blabla}
\end{figure}
\end{document}
答案2
答案3
如果您已经尝试过\begin{figure}[!htb] ... \end{figure}
但仍然不起作用,可能是因为您的图表/表格已经浮动到下一个\section
标题之后。因此,请尝试清除图表之前的页面。这将导致\clearpage
图表之前:\clearpage \begin{figure}[!htb] ... \end{figure}
。这对我来说是有效的,并且不会改变 LaTeX 的任何默认行为。