Getting a map with points, using ggmap and ggplot2

36,374

Solution 1

Your longitude and latitude values in geom_point() are in wrong order. lon should be as x values and lat as y values.

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

Solution 2

It seems you just inverted longitude and latitude :

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

enter image description here

Share:
36,374
Costin
Author by

Costin

Updated on July 05, 2022

Comments

  • Costin
    Costin almost 2 years

    I want a map with points (and other geom_* layers) on it. I get the map, but instead of the points all I get is a warning:

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

    Here is a reproducible 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
    

    Looking in the output of

    ggplot_build(p)
    

    I see a layer with NAs for x and y, but I do not get why the data from d is not considered.

    When using ggplot() instead of ggmap(), I do get the points. But I do need the map too :)

    So, how can I get a map with points over it?

    Thanks