2015-05-11 12 views
5

sagen das mein Dataset ist:Multi-Charakter Grundstück formt in ggplot

> (fake = data.frame(id=as.character(18:22), x=rnorm(5), y=rnorm(5))) 

    id   x   y 
1 18 1.93800377 0.67515777 
2 19 1.28241814 -0.04164806 
3 20 -1.58919444 -0.50885536 
4 21 -0.08127943 -1.90003188 
5 22 0.78134213 0.17693039 

ich ein Streudiagramm von x vs. y in denen wollen die Plotten Form ist die id variabel. Ich versuchte dies:

ggplot(data=fake, aes(x=x, y=y, shape=id)) + geom_point() + 
    scale_shape_manual(values=as.character(fake$id)) + theme_bw() 

enter image description here

Es dass als Plotten Form verwendet wird nur das erste Zeichen von id erscheint. Wie kann ich die gesamte Zeichenfolge verwenden?

Antwort

8

Wenn du einen Text auf einem Grundstück drucken möchten, verwenden Sie geom_text statt geom_point

ggplot(data=fake, aes(x=x, y=y, label=id)) + geom_text() + theme_bw() 

Das Plotten Zeichen (Form) von geom_point verwendet wird, kann nur ein einzelnes Zeichen sein. Für längere Strings müssen Sie geom_text() verwenden.

enter image description here

+0

Schön. Vielen Dank! –