manipulation - El código ggplot2 se ejecuta y actualiza el gráfico, pero no aparece realmente ningún dato
ggtitle size (1)
Estoy tratando de producir un gráfico usando ggplot2
en R. Aunque puedo generar el gráfico que quiero usando plot()
y cuando ejecuto el código ggplot a continuación, aparece con los ejes adecuados, pero no hay datos o escala.
Los datos se ven algo como esto:
data <- data.frame(area=c("alpha", "alpha", "bravo", "bravo", "charlie", "charlie"),
year=c(2001, 2002, 2001, 2002, 2001, 2002),
rate=c(.94, .90, .83, .87, .87, .95))
donde el área es una variable de carácter y el año / tasa son numéricos.
Si corro
plot(data$year, data$rate)
Veo en la ventana del diagrama el gráfico que espero ver. Lo que intento hacer es recrear esto en ggplot como un gráfico de líneas. Esto es lo que intenté:
gg <- ggplot(data=data, aes(x="year", y="rate", group="area"))
gg + geom_point()
gg + geom_line()
gg
# also tried subsetting to remove the group issue, thinking that might help but it didn''t. also removed line from this too
temp <- data[data$area=="alpha",]
gg <- ggplot(data=temp, aes(x="year", y="rate"))
gg + geom_point()
gg
# also tried this which manages to put a dot in the middle of the still empty plot
ggplot(data=test) +
geom_point(mapping=aes(x="Year", y="Attendance Rate", group="Area"))
En ambos casos, obtengo el mismo resultado: el código funciona bien (sin errores) y la ventana del gráfico se actualiza a la que más haya leído recientemente, pero si bien tiene las etiquetas X e Y correctas (año / tasa), en realidad no poner los datos allí. Tampoco hay escala, por lo que aparentemente no está leyendo esa información.
¿Qué estoy haciendo mal aquí? He estado utilizando las guías y las hojas de referencia a continuación, pero a mí (al menos me gustaría pensar que) las estoy recreando correctamente, pero es evidente que no.
https://www.rstudio.com/wp-content/uploads/2016/11/ggplot2-cheatsheet-2.1.pdf
No use comillas.
Con: aes("year", "rate")
estaba tramando palabras "year"
y "rate"
.
Con aes(year, rate)
trazas year
variable y rate
en datos de data
.
ggplot(data, aes(year, rate, group = area)) +
geom_point() +
geom_line()
Si por alguna razón tiene que usar comillas, use aes_string
en aes_string
lugar:
ggplot(data, aes_string("year", "rate", group = "area")) +
geom_point() +
geom_line()