Как заставить две фигуры остаться на одной странице в LaTeX?
У меня есть два изображения, которые я хочу отобразить на странице в виде цифр. Каждый съедает чуть меньше половины доступного пространства, поэтому на этой странице не так много места для других вещей, но я знаю, что для обеих фигур достаточно места. Я попытался поместить фигуры с [ht] и [hb], как [h], так и оба [ht], но все же я не могу получить эти два изображения на одной странице, но вместо них по крайней мере несколько абзацев между ними.
Как заставить эти две фигуры оставаться на одной странице?
Ответы
Ответ 1
Вы можете поместить две фигуры внутри одной фигуры. Например:
\begin{figure}[p]
\centering
\includegraphics{fig1}
\caption{Caption 1}
\includegraphics{fig2}
\caption{Caption 2}
\end{figure}
Каждый заголовок будет генерировать отдельный номер фигуры.
Ответ 2
Если вы хотите иметь изображения по одной теме, вы можете использовать пакет subfigure
и конструкцию:
\begin{figure}
\subfigure[first image]{\includegraphics{image}\label{first}}
\subfigure[second image]{\includegraphics{image}\label{second}}
\caption{main caption}\label{main_label}
\end{figure}
Если вы хотите иметь, например, два разных изображения рядом друг с другом, вы можете использовать:
\begin{figure}
\begin{minipage}{.5\textwidth}
\includegraphics{image}
\caption{first}
\end{minipage}
\begin{minipage}{.5\textwidth}
\includegraphics{image}
\caption{second}
\end{minipage}
\end{figure}
Для изображений в столбцах у вас будет [1] [2] [3] [4] в источнике, но это будет выглядеть как
[1] [3]
[2] [4].
Ответ 3
У меня была эта проблема, пытаясь смешать цифры и текст. Для меня работала опция "H" без "!" вариант.
\begin{figure}[H]
"H" пытается заставить фигуру точно указать ее в коде.
Это требует включения
\usepackage{float}
Ниже описаны опции
Ответ 4
Если вы хотите, чтобы они оба были на одной странице, и оба они будут занимать в основном целую страницу, тогда лучшая идея - сказать LaTeX, чтобы поместить их на свою страницу!
\begin{figure}[p]
Возможно, было бы против звуковых типографских принципов (например, уродливых) иметь две цифры на странице с несколькими строками текста выше или ниже них.
Кстати, причина, по которой работает [!h]
, заключается в том, что она сообщает LaTeX о переопределении своих обычных ограничений на то, сколько места должно быть посвящено плаваниям на странице с текстом. Как подразумевалось выше, есть причина, по которой существуют ограничения. Это не значит, что их можно немного ослабить; см. FAQ при этом.
Ответ 5
Попробуйте добавить !
, например. [h!]
.
Ответ 6
попробуйте [h!] сначала, но еще вы можете сделать это уродливым способом.
LateX немного сложнее размещать изображения с такими ограничениями, какими они управляют размещением. То, что я обычно делаю, если я хочу, чтобы фигура прямо в этом месте делала что-то вроде::
text in front of image here
\newpage
\figure1
\figure2
text after images here
Я знаю, что это может быть неправильный способ сделать это, но он работает как шарм:).
//редактировать
Вы можете сделать то же самое, если хотите немного текста в верхней части страницы, но затем просто используйте /clearpage. Конечно, вы также можете масштабировать их немного меньше, чтобы этого больше не было. Возможно, невидимые пробелы немного больше, чем вы подозреваете, я всегда стараюсь масштабировать свое изображение, пока они не появятся на одной странице, просто чтобы точно знать, что не существует перекрытия 1%, только делая все это не нужным.