es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Fallando en la función annotate_figure (ggpubr) con ggsave()

Cuando uso annotate_figure() del paquete ggpubr, la vista previa que obtengo en la ventana de gráficos de R se ve genial, pero cuando exporto la figura usando ggsave(), el texto que agregué es reemplazado por una barra negra.

No estoy seguro si esto es un error o si estoy haciendo algo mal, pero está sucediendo en el código que ejecuté previamente sin problemas. ¿Alguien más está experimentando este problema? Estoy ejecutando la versión 4.1.2 de R, la versión 3.3.5 de ggplot2 y la versión 0.4.0 de ggpubr. Soy nuevo aquí, disculpen si hay información que necesitan pero no he reportado.

Aquí hay un ejemplo simple con mtcars:

library(ggplot2)
library(ggpubr)

car_example <-
  ggplot(mtcars, aes(x=wt, y=mpg)) +
  geom_point() +
  theme(text=element_text(size=12, family="serif", color="black"))

car_figure <- annotate_figure(car_example, left = text_grob("Etiqueta de ejemplo", rot = 90, size=12, family="serif", color="black"))

ggsave(plot=car_figure, "car_example.jpeg", device = "jpeg", dpi=300, width = 3, height=3, units = "in")

Esto produce este gráfico en la ventana de vista previa de R.

Pero este gráfico después de exportarlo con ggsave, el texto “Etiqueta de ejemplo” ha sido reemplazado por una barra negra.

Tags:  , ,

Answer

  1. Avatar for davy.ai

    Este problema ha sido reportado anteriormente y parece estar relacionado con un error en el paquete Cairo, el cual es utilizado por ggplot2 para producir gráficos de alta calidad. Una posible solución alternativa es utilizar un dispositivo diferente para exportar la figura, como “png” o “pdf”. Puedes intentar modificar la línea de ggsave en tu ejemplo de la siguiente manera:

    ggsave(plot=car_figure, "car_example.png", device = "png", dpi=300, width = 3, height=3, units = "in")
    

    Esto debería producir una figura en la cual el texto no sea reemplazado por una barra negra. Otra posible solución es actualizar los controladores gráficos o probar con una tarjeta gráfica diferente.

Comments are closed.