Saltar al contenido

Los gráficos de ggplot en scripts no se muestran en Rstudio

este problema se puede solucionar de diversas maneras, sin embargo te compartimos la solución más completa en nuestra opinión.

Solución:

La solución es llamar explícitamente print() en el objeto ggplot:

library(ggplot2)

p <- ggplot(mtcars, aes(wt, mpg))
p <- p + geom_point()
print(p)

ggplot la función devuelve el objeto de la clase ggplot; ggplot2 funciona por sobrecarga print función para comportarse de manera diferente en los objetos de la clase ggplot: en lugar de imprimirlos en STDOUT, crea un gráfico.

Todo funciona bien en modo interactivo, porque R asume que la mayoría de los comandos se ejecutan print() función. Esto es para nuestra comodidad y nos permite escribir rnorm(1) y obtener cualquier resultado visible. Cuando se utiliza el comando Ejecutar selección actual (Ctrl+Enter), RStudio se comporta como si cada línea seleccionada se escribiera en modo interactivo y se ejecutara. Puede verificar eso revisando su historial de comandos en Console panel después de ejecutar algunas líneas seleccionadas.

Pero este modo conveniente se abandona cuando el archivo es leído por source(). Dado que esta función está diseñada para ejecutar secuencias de comandos R (potencialmente largas y computacionalmente costosas), no es deseable contaminar STDOUT con mensajes de baja prioridad. Es por eso source() de forma predeterminada, solo se generará un mensaje de error. Si quieres algo más, tienes que pedirlo explícitamente.

aunque es una pregunta bastante antigua. Tuve el mismo problema y encontré una solución rápida, si desea usar el botón "fuente" en el cuadro de edición de R studio.

simplemente puede activar "fuente con eco" (Ctrl + Shift + Enter) y la trama se muestra como se esperaba

Recientemente me encontré con esta pregunta y me di cuenta de que la forma más actualizada es llamar show(p) después de crear la trama.

Si tienes algún titubeo o disposición de regenerar nuestro división te mencionamos añadir un comentario y con gusto lo ojearemos.

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



Utiliza Nuestro Buscador

Deja una respuesta

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