Draw Point on Map Without Border

2019-07-17 10:38发布

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?

标签: r ggplot2 ggmap
1条回答
劳资没心,怎么记你
2楼-- · 2019-07-17 11:08

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

查看更多
登录 后发表回答