2013-02-25 8 views
15

ich mit Punkten, die eine Karte wünschen (und anderen geom_ * Schichten) auf sich. Ich erhalte die Karte, sondern der Punkte alles, was ich bekommen, ist eine Warnung:Abrufen eine Karte mit Punkten, mit ggmap und ggplot2

Message d'avis : 
Removed 3 rows containing missing values (geom_point). 

Hier ist eine reproduzierbare exemple:

library(ggmap) 
library(ggplot2) 

d <- data.frame(lat=c(50.659631, 50.607213, 50.608129), 
       lon=c(3.09319, 3.011473, 3.031529)) 

Lille <- get_map("Lille,France", zoom=12) 

p <- ggmap(Lille) 
p <- p + geom_point(data=d, aes(lat, lon)) 
p 

Suchen Sie in der Ausgabe von

ggplot_build(p) 

I sehen eine Schicht mit NAs für x und y, aber ich weiß nicht bekommen, warum die Daten von d nicht berücksichtigt wird.

Wenn ggplot mit() anstelle von ggmap(), muss ich die Punkte bekommen. Aber ich brauche auch die Karte :)

Also, wie kann ich eine Karte mit Punkte darüber?

Dank

Antwort

18

Ihre Längen- und Breitenwerte in geom_point() sind in falscher Reihenfolge. lon sollte als x Werte und lat als y Werte sein.

p + geom_point(data=d, aes(x=lon, y=lat),size=5) 
21

Es scheint, dass Sie nur Länge und Breite invertiert:

p <- ggmap(Lille) 
p + geom_point(data=d, aes(x=lon, y=lat), color="red", size=30, alpha=0.5) 

enter image description here

+0

Ja, ich war sicher, dass es eine einfache Lösung ist :) – Costin

+0

@Costin Bitte akzeptieren Didzis Elferts' Antwort statt von mir, denke ich, antwortete er zuerst. – juba

+0

OK, ich sehe deine Nachricht zuerst aufgeführt, aber wenn Sie sagen, so werde ich seine Antwort akzeptieren. Sie müssen in der gleichen Sekunde sein, ich denke :) – Costin

Verwandte Themen