web-dev-qa-db-fra.com

Comment puis-je ajouter une autre couche / nouvelle série à un ggplot?

Dans ggplot, je peux ajouter une série à un tracé avec:

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

Comment ajouter simplement une autre série, par exemple traçant le coût des rubis contre les diamants. En supposant que les rubis se trouvaient également dans l'ensemble de données sur les diamants. J'ai essayé de superposer une autre couche supérieure avec les données de rubis, mais cela ne fait que tracer les rubis et non les diamants/carats.

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

Je peux voir que cela serait possible en fusionnant d'abord toutes les données, prêt à les tracer, alors je devrais peut-être suivre cette voie. Cependant, l'ajout d'une autre série à une intrigue comme celle-ci ne devrait pas être trop difficile, mais je ne sais pas comment le faire.

30
John
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")
54
hadley