web-dev-qa-db-fra.com

Ajout d'étiquettes de texte au nuage de points ggplot2

Existe-t-il un bon moyen d'ajouter facilement des étiquettes de texte aux cercles du graphique? Je n'ai pas pu le faire en utilisant le package directlabels car j'obtiens l'erreur:

Erreur dans direct.label.ggplot (p, "first.qp"): besoin d'une esthétique des couleurs pour déduire les étiquettes directes par défaut. "

Voici le graphique: What I have at the moment

Et voici le code que j'utilise:

library(ggplot2)
library(directlabels)
#my data set:
oc <- read.csv("http://www.columbia.edu/~mad2200/oc.csv")
oc$percent_women <- oc$W_employment/(oc$M_employment+oc$W_employment)
oc$size <- oc$W_employment+oc$M_employment
p <- ggplot(oc, aes(M_w_earnings, W_w_earnings, label = as.character(Occupational.Group)))
p + geom_point(aes(size = size, colour=percent_women)) + scale_size_continuous(range=c(0,30)) + #scale_area()+
#geom_point(aes(colour = oc$percent_women)) + 
coord_equal() +
scale_colour_gradient(high = "red")+
ylim(700, 1700) +
xlim(700, 1700) +
geom_abline(slope=1) +
labs(title = "Income Disparity by Occupation and Gender") +
ylab("Women's Weekly Earnings in $") +
xlab("Men's Weekly Earnings in $")
20
Michael Discenza

Ajoutez geom_text(aes(label=Occupational.Group), size=3) au tracé. Vous devrez cependant jouer avec la taille.

enter image description here

31
Jared