Saltar al contenido

R markdown: ¿puedo insertar un pdf en el archivo r markdown como una imagen?

Luego de consultar con expertos en el tema, programadores de deferentes áreas y maestros hemos dado con la solución al dilema y la plasmamos en este post.

Solución:

Si solo está tratando de insertar una imagen que se ha exportado, por ejemplo, desde algún análisis R en una imagen pdf, también puede usar las opciones de imagen estándar del motor knitr.

Con algo como:

```r, out.width="0.3\linewidth", include=TRUE, fig.align="center", fig.cap=c("your caption"), echo=FALSE
knitr::include_graphics("./images/imagename.pdf")
```

Desafortunadamente, no puede especificar las dimensiones iniciales de su salida de imagen (fig.width y fig.height), que necesitaría predefinir en su salida inicial, pero puede especificar el tamaño final de la imagen en su documento ( ancho.de.salida). Sin embargo, como se indica a continuación, esto se limita a la reducción.

Por supuesto, también podría omitir la especificación del directorio inicial si sus archivos están en el mismo directorio de trabajo. Solo tenga en cuenta las diferencias del sistema operativo al especificar la ruta a la imagen.

Un método alternativo es usar la sintaxis Markdown anotada por @hermestrismegistus en esta publicación:

![Image Title](./path/to/image.pdf)width=65%

Esto también se puede recopilar para varias imágenes una al lado de la otra:

![Image Title](./path/to/image.pdf)width=33%![Image2 Title](./path/to/image2.pdf)width=33%![Image3 Title](./path/to/image3.pdf)width=33%

Editar:

Después de trabajar más extensamente con las referencias en el texto, descubrí que usar fragmentos r y el include_graphics opción para ser más útil. También por la flexibilidad en cuanto a la alineación de la imagen (justificación).

Como ejemplo:

```r image-ref-for-in-text, echo = FALSE, message=FALSE, fig.align='center', fig.cap='Some cool caption', out.width='0.75\linewidth', fig.pos='H'
knitr::include_graphics("./folder/folder/plot_file_name.pdf")
```

La referencia se puede usar más adelante en el texto, por ejemplo, Figura @ref(fig:image-ref-for-in-text) ilustra bla, bla.

Algunas cosas importantes a tener en cuenta al usar este formato:

  1. Solo puede expandir imágenes PDF a través de un fragmento de código hasta el out.width y out.height condiciones establecidas en el original .pdf expediente. Por lo tanto, recomendaría configurarlos ligeramente en el lado más grande de su imagen original (solo tenga en cuenta que cualquier texto del gráfico se escalará en consecuencia).

  2. El código de referencia en el texto (en este caso image-ref-for-in-text) NO PUEDE contener guiones bajos (_) pero puede contener guiones (-). Sabrá si se equivoca con un mensaje de error que indica ! Package caption Error: caption outside float.

  3. Para evitar que sus gráficos se desvíen a las secciones equivocadas de su documento, pero de una manera que lamentablemente generará algunos espacios en blanco, el ejemplo anterior incluye fig.pos='H'. Donde H se refiere a la posición de “mantener”. Se puede lograr lo mismo para la opción Markdown anterior colocando un punto (punto .) inmediatamente después del último paréntesis.

Ejemplo:

![Image Title](./path/to/image.pdf)width=75%.

Desafortunadamente, esta última opción da como resultado algunas paradas completas antiestéticas. Otra razón por la que prefiero el include_graphics opción.

Lo siento, encontré que hay una publicación similar antes: Agregar archivo pdf en el archivo Rmarkdown

Básicamente, puedo usar algo como lo siguiente que funciona bien para la salida html:
algún texto

Y algo como lo siguiente funciona bien para la salida en pdf: (1) posible solución

begincenter
includegraphics[width=8in]myFirstAlignment2.pdf
endcenter

(2) posible solución
![Alt](myFirstAlignment2.pdf)

los myFirstAlignment2.pdf debe ser reemplazado con pathmyFirstAlignment2.pdf si el archivo pdf no está en su directorio de trabajo.

En relación al comentario de la mejor respuesta, hay una forma de usar la segunda opción, y la salida no sale minúscula.

Use la siguiente sintaxis a continuación con la altura siendo un número grande. Tener texto entre paréntesis es necesario para que funcione.

![Alt](./file.pdf)width=100% height=400

Si sostienes algún titubeo y forma de aumentar nuestro división te recomendamos ejecutar una apostilla y con gusto lo leeremos.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)


Tags : /

Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *