Search code examples
rggplot2ggmap

Draw Point on Map Without Border


library(ggplot2)
library(ggmap)
data <- read.table(file = "data.txt", sep = ",", col.names = c("lat", "lon", "place_name"), fill=FALSE, strip.white=TRUE)

# getting the map
mapgilbert <- get_map(location = c(lon = mean(data$lon), lat = mean(data$lat)),
              zoom = "auto" , maptype = "roadmap", scale = 2, color = "bw")

# plotting the map with some points on it
ggmap(mapgilbert, extent = "device") +
  geom_point(data = data, aes(x = lon, y = lat, fill = place_name), size = 0.5, shape = 22) +
  guides(fill=FALSE, alpha=FALSE, size=FALSE)

This will produce points with different color (According to their names). Something like this:

enter image description here

However, I want to get rid of the black border of the points. Is there a way to do that?


Solution

  • Try a different shape:

    data <- data.frame(lat=52.5176736, lon=13.3895097)
    library(ggmap)
    library(ggplot2)
    mapgilbert <- get_map(location = c(lon = mean(data$lon), lat = mean(data$lat)),
                  zoom = "auto" , maptype = "roadmap", scale = 2, color = "bw")
    ggmap(mapgilbert, extent = "device") +
      geom_point(data = data, aes(x = lon, y = lat), size = 6, shape = 16, color="red") +
      guides(fill=FALSE, alpha=FALSE, size=FALSE)
    

    or set color to NA when using shape = 21:

    ggmap(mapgilbert, extent = "device") +
      geom_point(data = data, aes(x = lon, y = lat), size = 6, shape = 21, color=NA, fill = "red") +
      guides(fill=FALSE, alpha=FALSE, size=FALSE)
    

    enter image description here