2016-07-09 14 views

Antwort

4

Ich würde geom_text empfehlen.

set.seed(101) 
dd <- data.frame(x=rnorm(50),y=rnorm(50),id=1:50) 
library(ggplot2) 
ggplot(dd,aes(x,y))+geom_text(aes(label=id)) 

enter image description here

+0

auch 'ggrepel :: geom_text_repel' wenn overplotting ein Problem ist. – Axeman

2

Ich werde zeigen, wie es zu tun mit geom_textund/odergeom_point.

  1. Mit geom_text (empfohlen)

Für dieses Beispiel habe ich den eingebauten in Dataset verwenden werden mtcars und lassen Sie uns die Zahlen vorgeben, die angezeigt werden sollen sind die Gewichte (wt) Variable:

data(mtcars) 
p <- ggplot(mtcars, aes(wt, mpg, label = rownames(mtcars))) 

p + geom_text(aes(label = wt), 
       parse = TRUE) 

enter image description here

oder wenn Sie ein Beispiel mit t wollen ruly eindeutige Zahlen, können wir nur einen Index bilden mit seq:

data(mtcars) 
p <- ggplot(mtcars, aes(wt, mpg, label = rownames(mtcars))) 

p + geom_text(aes(label = seq(1:32)), 
       parse = TRUE) 

enter image description here

  1. Mit geom_point

Während es würde mehr Arbeit erfordern, es tatsächlich ist möglich, dies mit geom_point zu tun.

Dies ist ein reference Bild von einigen der Formen, die Sie mit geom_point verwenden:

enter image description here

Wie Sie formt sehen 48-57 sind 0 bis 9. Sie diese Formen nutzen können (und Kombinationen von ihnen eine unendliche Menge von Zahlen) über geom_point wie folgt zu bilden:

d=data.frame(p=c(48:57)) 
ggplot() + 
    scale_y_continuous(name="") + 
    scale_x_continuous(name="") + 
    scale_shape_identity() + 
    geom_point(data=d, mapping=aes(x=p%%16, y=p%/%16, shape=p), size=5, fill="red") 

enter image description here

Schließlich ist ein triviales Beispiel mit mtcars + geom_point mit beliebigen Zahlen:

d=data.frame(p=c(48:57,48:57,48:57,48,49)) 
attach(mtcars) 
ggplot(mtcars) + 
    scale_y_continuous(name="") + 
    scale_x_continuous(name="") + 
    scale_shape_identity() + 
    geom_point(data=d, mapping=aes(x=wt, y=mpg, shape=p), size=5, fill="red") 

enter image description here