两栏式 LaTeX 图表

两栏式 LaTeX 图表

有没有一种方便的方法可以将放置figure*在当前页面的末尾,而不是占据环境中的整个下一页twocolumn?放置修饰符[Hb]不起作用。

答案1

尝试浮点数包裹。

\documentclass[twocolumn]{article}
\usepackage{lipsum}
\usepackage{stfloats}
\begin{document}
\lipsum[1-5]
\begin{figure*}[b]
\centering\rule{0.8\textwidth}{0.3\textwidth}
\caption{A nice figure}
\end{figure*}
\lipsum[1-10]
\end{document}

这使:

在此处输入图片描述

答案2

dblfloatfix包裹还提供了twocolumn格式中的位置说明符,尽管它通常至少延迟一页:

在此处输入图片描述

\documentclass[twocolumn]{article}
\usepackage{dblfloatfix}% http://ctan.org/pkg/dblfloatfix
\usepackage{lipsum}% http://ctan.org/pkg/lipsum
\begin{document}
\begin{figure*}[b]
  \centering\rule{.7\textwidth}{.2\textwidth}
  \caption{A figure caption}
\end{figure*}
\lipsum[1-20]
\end{document}

在上面的例子中,请注意第一个图像是如何放置在文档的开头(第 1 页)并在底部请求的b,而它实际上显示在第 2 页的底部。但是,位置可能仍然取决于所包含图像的大小。

请注意,它不应与stfloats包裹

答案3

[Hb]作为位置修饰符没有意义—— [H]只能单独使用,意思是“将其放在这里,句号”(并且需要包float)。

如果您想将其放在底部,只需使用[b]。如果 LaTeX 认为它比您更了解,请尝试[b!]让 LaTeX 更加努力。如果这仍然不起作用,那么您基本上就没那么幸运了。

相关内容