Deux geom_points ajouter une légende
J'ai tracé un 2 geom_point graphique avec le code suivant:
source("http://www.openintro.org/stat/data/arbuthnot.R")
library(ggplot2)
ggplot() +
geom_point(aes(x = year,y = boys),data=arbuthnot,colour = '#3399ff') +
geom_point(aes(x = year,y = girls),data=arbuthnot,shape = 17,colour = '#ff00ff') +
xlab(label = 'Year') +
ylab(label = 'Rate')
Je veux simplement savoir comment faire pour ajouter une légende sur le côté droit. Avec la même forme et la même couleur. Triangle rose doit avoir la légende "femme" et le cercle bleu de la légende des "hommes". Semble assez simple, mais après plusieurs essai, je ne pouvais pas le faire. (Je suis un débutant avec ggplot).
OriginalL'auteur S12000 | 2013-07-18
Vous devez vous connecter pour publier un commentaire.
Si vous renommez votre colonnes de l'original de la trame de données, puis la faire fondre dans le format long, avec
reshape2::melt
, il est beaucoup plus facile à manipuler en ggplot2. En spécifiant lecolor
etshape
l'esthétique dans la ggplot de commande, et en précisant les échelles de couleurs et de formes à la main, la légende apparaît.OriginalL'auteur Jim M.
Ici est une façon de le faire sans l'aide de remodeler::faire fondre. remodeler::faire fondre les œuvres, mais vous pouvez vous faire un bind si vous souhaitez ajouter d'autres choses sur le graphique, tels que les segments de ligne. Le code ci-dessous utilise l'origine de l'organisation des données. La clé de la modification de la légende est de s'assurer que les arguments de scale_color_manual(...) et scale_shape_manual(...) sont identiques, sinon vous obtiendrez deux légendes.
résultats de sortie
OriginalL'auteur Ken Junk