微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在 R 中使用 GGMAP 使用 Zoom 和 ggsn :: scalebar 使用 Google 地形视图和卫星视图

如何解决在 R 中使用 GGMAP 使用 Zoom 和 ggsn :: scalebar 使用 Google 地形视图和卫星视图

我有下面给出的代码,它使用 ggmap 库使用谷歌绘制了 4km x 4km 的地图。

googleTerrainView <- function(use_data){
  
  tibble(lng=use_data$longitude,lat=use_data$latitude) -> map1
  
  get_googlemap(center = c(lon = map1$lng,lat = map1$lat),zoom = 14,maptype = "terrain") %>% 
    ggmap() +
    geom_point(data = map1,aes(lng,lat),size = 8,#shape = 4,shape= 23,fill="red",color="black") -> plot1 ->> plot1_super
  
  xmin<-layer_scales(plot1)$x$range$range[[1]]
  xmax <- layer_scales(plot1)$x$range$range[[2]]
  ymin <- layer_scales(plot1)$y$range$range[[1]]
  ymax <- layer_scales(plot1)$y$range$range[[2]]
  
  xmin ->> xmin_super
  xmax ->> xmax_super
  ymin ->> ymin_super
  ymax ->> ymax_super
  
  
  
  plot1+    
    theme_void() +
    ggsn::scalebar(x.min = xmin+0.0007,x.max = xmax,y.min = ymin,y.max = ymax-0.002,transform = TRUE,dist_unit = "km",height = 0.02,location = "topleft",dist = 1,model = 'wgs84') 
  
}

googleSatelliteView <- function(use_data){
  
  tibble(lng=use_data$longitude,maptype = "satellite") %>% 
    ggmap() +
    geom_point(data = map1,color="black") -> plot1
  
  xmin<-layer_scales(plot1)$x$range$range[[1]]
  xmax <- layer_scales(plot1)$x$range$range[[2]]
  ymin <- layer_scales(plot1)$y$range$range[[1]]
  ymax <- layer_scales(plot1)$y$range$range[[2]]
  
  plot1+
    theme_void() +
    ggsn::scalebar(x.min = xmin+0.00075,model = 'wgs84',st.color = "white")
  
  
}

现在我的问题是我们如何使用相同的代码来绘制覆盖 200 公里 X 200 公里区域的卫星和地形图。可以更改的参数(据我所知)是 ggmap 和 ggsn :: scalebar 的 Zoom。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。