2011-04-03 31 views
24

¿Hay alguna forma de agregar etiquetas a cada punto de un trazado? Hice esto en un editor de imágenes solo para transmitir la idea: 1.cómo agregar etiquetas a un gráfico

El original se generó con:

qplot(pcomments, gcomments , data = topbtw, colour = username)

Manually added fake labels to qplot

Respuesta

27

Para dar seguimiento a una excelente respuesta de Andrie, que con frecuencia emplean dos métodos para agregar etiquetas a una subconjunto de puntos en un diagrama si necesito resaltar datos específicos. Ambos se muestran a continuación:

dat <- data.frame(x = rnorm(10), y = rnorm(10), label = letters[1:10]) 

#Create a subset of data that you want to label. Here we label points a - e 
labeled.dat <- dat[dat$label %in% letters[1:5] ,] 

ggplot(dat, aes(x,y)) + geom_point() + 
    geom_text(data = labeled.dat, aes(x,y, label = label), hjust = 2) 

#Or add a separate layer for each point you want to label. 
ggplot(dat, aes(x,y)) + geom_point() + 
    geom_text(data = dat[dat$label == "c" ,], aes(x,y, label = label), hjust = 2) + 
    geom_text(data = dat[dat$label == "g" ,], aes(x,y, label = label), hjust = 2) 
+3

+1 Para resaltar que a menudo tiene sentido etiquetar solo un subconjunto, p. los valores atípicos. – Andrie

14

Sí, el uso geom_text() para añadir texto a su parcela. Aquí está un ejemplo:

library(ggplot2) 

qplot(mtcars$wt, mtcars$mpg, label=rownames(mtcars), geom="text") 

ggplot(mtcars, aes(x=wt, y=mpg, label=rownames(mtcars))) + geom_text(size=3) 

Consulte la documentación en línea para obtener más información: http://had.co.nz/ggplot2/geom_text.html

enter image description here

Cuestiones relacionadas