Ten en cuenta que en las ciencias informáticas cualquier problema casi siempere suele tener varias resoluciones, pero aquí te mostraremos lo más óptimo y eficiente.
Solución:
Esto es muy probable porque el figure
el entorno flota, que no es lo que buscas. Para ello tienes un par de opciones:
-
Añade el
float
paquete que proporciona laH
especificador flotante, lo que le permite utilizarusepackagefloat% http://ctan.org/pkg/float %... beginfigure[H] %... caption[
] endfigure evitando que el flotador se mueva.
-
Añade el
caption
(o el súper pequeñocapt-of
) empaqueta y envuelve tu figura dentro de unminipage
para mantener la imagen y el título juntos. Úselo de la siguiente manera:usepackagecaption% http://ctan.org/pkg/caption %usepackagecapt-of% http://ctan.org/pkg/capt-of %... noindentbeginminipagetextwidth %... captionoffigure[
] endminipage %...
Para obtener más información sobre la colocación de figuras, consulte ¿Cómo influir en la posición de entornos flotantes como figura y tabla en LaTeX? y Mantener tablas/figuras cerca de donde se mencionan.
Las propuestas anteriores son puramente impulsadas por LaTeX.
Si desea administrar esto dentro de pandoc, considere agregar lo siguiente a un archivo llamado float_adjustment.tex
y colóquelo en la carpeta de su proyecto:
usepackagefloat
floatplacementfigureH
Luego incluya este archivo como parte de su preámbulo usando el encabezado pandoc
--- title: "A title" author: "An author" date: "`r format(Sys.time(), '%d %B %Y')`" output: rmarkdown::pdf_document: fig_caption: yes includes: in_header: figure_placement.tex ---
Todas las figuras deben ser forzadas en su lugar a través del [H]
Especificación flotante de ERE.
Una solución simple es agregar una línea con un barra invertida y espacio inmediatamente después de la figura, seguido de una línea en blanco:
![Alt text](image.png)
Some text after the figure...
¡No olvides el espacio después de la barra invertida! Esto parece funcionar en Pandoc 1.12.4.2.
Editar: como se señaló en los comentarios, esto suprimirá los títulos de las figuras.
No me gusta la solución de usar una compilación de 2 pasos (Latex -> sed -> pdf).
Puede sobrescribir el figura medio ambiente en su plantilla de Latex:
% Overwrite beginfigure[htbp] with beginfigure[H]
usepackagefloat
letorigfigure=figure
letendorigfigure=endfigure
renewenvironmentfigure[1][]%
origfigure[H]
%
endorigfigure
De esta manera, aún puede utilizar la generación directa de pdf.