2010-02-24 46 views
26

En ggplot puedo añadir una serie de una parcela con:¿Cómo puedo agregar otra capa/nueva serie a un ggplot?

ggplot(diamonds, aes(x = carat, y = price)) + geom_point() 

¿Cómo simplemente añadir otra serie, por ejemplo, trazando el costo de los rubíes contra los diamantes. Asumiendo rubíes también estaba en el conjunto de datos de diamantes. He tratado de extender sobre la capa superior los datos de rubíes, pero solo traza los rubíes y no los diamantes/quilates.

ggplot(diamonds, aes(x = carat, y = price)) + geom_point() + aes(x = rubies, y = price) 

puedo ver que esto sería posible combinar todas los datos juntos en primer lugar, listos para trazar, así que quizás debería seguir ese camino. Sin embargo, solo agregar otra serie a una trama como esta parece que no debería ser demasiado difícil, pero no puedo entender cómo hacerlo.

Respuesta

44
rubies <- data.frame(carat = c(3, 4, 5), price= c(5000, 5000, 5000)) 

ggplot(diamonds, aes(carat, price)) + 
    geom_point() + 
    geom_point(data = rubies, colour = "red") 
+0

¿Qué sucede si desea agregar una segunda serie de puntos * y * una segunda línea relacionada con esos nuevos puntos? Por ejemplo, si ya tiene 'ggplot (dat, aes (X, Y)) + geom_point() + geom_line()' y quiere agregar un segundo 'geom_point' y un 2nd' geom_line'? – theforestecologist

+0

¿Tengo que repetir el 2 ° conjunto de datos y la lista de variables para ambos objetos Geom, o hay una forma mejor? – theforestecologist

Cuestiones relacionadas