R ggplot2 para bucle traza los mismos datos

He reunido un bucle for simple para generar una serie de tramas y luego usar grid.arrange para trazarlas. Tengo dos problemas:

Los ejes de las parcelas cambian correctamente a los nombres de columna, pero elmismo los datos se trazan en cada gráfico. Después de poner un punto de interrupción y recorrer el código, parece estar incrementándose correctamente, así que no estoy seguro de por qué.

He configurado la trama estética para agrupar en año, sin embargo, esto produce .5 años intermedios que aparecen en la leyenda. Esto no me ha pasado antes.

Debería ser todo reproducible usandomtcars.

library(ggplot2)
library(gridExtra)

result <- mtcars

for(i in 1:2) {
  nam <- paste("p", i, sep = "")
  assign(
    nam, ggplot(result, aes(x = disp, y = results[i+4], group = gear, color = gear)) +
      geom_line() +
      geom_point() +
      scale_colour_distiller(palette = "Dark2", direction = -1, guide = "legend") +
      scale_y_continuous(name = colnames(results[i+4])) +
      scale_x_continuous(name = "x")
  )
}


plist <- mget(paste0("p", 1:2))
do.call(grid.arrange, plist)

Respuestas a la pregunta(4)

Su respuesta a la pregunta