0

I am using latex to write a document, and I need to insert a figure in a whole single page, the code is as follows.

\documentclass[10pt]{book}
\usepackage{pgfplotstable}
\begin{document}
\par text 1  \par text 2  \par text 3  \par text 4  \par text 5  \par text 6  \par text 7  \par text 8  \par text 9  \par text 10 \par text 11 \par text 12 \par text 13 \par text 14 \par text 15 \par text 16 \par text 17 \par text 18 \par text 19 \par text 20 \par text 21 \par text 22 \par text 23 \par text 24 \par text 25 \par text 26 \par text 27 \par text 28 \par text 29 \par text 30 \par text 31 \par text 32 \par text 33 \par text 34 \par text 35 \par text 36 \par text 37 \par text 38 \par text 39 \par text 40 \par text 41 \par text 42 \par text 43 \par text 44 \par text 45 \par text 46
\newpage
\begin{figure}[ht]
    \centering
    \includegraphics[width=10cm,height=14cm]{example-image-a}
    \caption{figure.}
\end{figure}
\newpage
\par text 47  \par text 48 \par text 49 \par text 50 \par text 51 \par text 52
\end{document}

It can be seen that the figure really shows on a single page as in the picture.

enter image description here

I increased the figure's height to 18cm, since the second page still has space, but the figure shows at the end of the document, not on the second page as expected in the code.

enter image description here

Hence, does anyone know the reason? Since as in the first page, the page still has space.

wxwuse
  • 139

1 Answers1

0

The float package provides the H option to floating environments, which completely stops them from floating.

a

\documentclass[10pt]{book}
\usepackage{pgfplotstable}

\usepackage{float}% <<<<<<<<<<

\begin{document} \par text 1 \par text 2 \par text 3 \par text 4 \par text 5 \par text 6 \par text 7 \par text 8 \par text 9 \par text 10 \par text 11 \par text 12 \par text 13 \par text 14 \par text 15 \par text 16 \par text 17 \par text 18 \par text 19 \par text 20 \par text 21 \par text 22 \par text 23 \par text 24 \par text 25 \par text 26 \par text 27 \par text 28 \par text 29 \par text 30 \par text 31 \par text 32 \par text 33 \par text 34 \par text 35 \par text 36 \par text 37 \par text 38 \par text 39 \par text 40 \par text 41 \par text 42 \par text 43 \par text 44 \par text 45 \par text 46 \newpage \begin{figure}[H] % changed \centering \includegraphics[width=10cm,height=18cm]{example-image-a} \caption{figure.} \end{figure} \newpage \par text 47 \par text 48 \par text 49 \par text 50 \par text 51 \par text 52 \end{document}

Simon Dispa
  • 39,141
  • Better than [H] is https://tex.stackexchange.com/a/8631/107497. But since OP wanted a page with only the figure, they should have used [p], which asks for exactly that. – Teepeemm Feb 13 '24 at 02:26