首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在tmap上手动设置地图比例

在tmap上手动设置地图比例
EN

Stack Overflow用户
提问于 2021-11-17 03:31:53
回答 1查看 50关注 0票数 0

我正在用tmap创建一个地图,将特定的坐标绘制为点。我想将我的地图另存为.png,使用tmap_leafletmapshot可以很好地工作(参见下面的代码)。

代码语言:javascript
复制
library(sf)
library(tmap)
library(mapview)

coord <- data.frame(Lat=c(0.92, 0.92, 0.93, 0.92, 0.93, 0.93, 1.00, 1.00, 0.99, 0.93),
              Lon=c(104.58, 104.51, 104.57, 104.50, 104.55, 104.51, 104.59, 104.49, 104.6, 104.61))
sdat <- st_as_sf(coord, coords = c("Lon", "Lat"),
                 crs = "+proj=longlat +datum=WGS84 +no_defs")
tmap_mode("view")
Map <- tm_basemap("Esri.WorldTopoMap") +
  tm_shape(sdat) +
  tm_dots(alpha = 1,
          title = "Location")
lf <- tmap_leaflet(Map)
mapshot(lf, file = "Map.png") # save map

我的问题是在tmap视图模式下可视化的默认区域。我想缩小以可视化地图的更大区域(例如,设置特定的边界),而不仅仅是真正靠近所绘制的点的区域。我还没能在网上找到解决方案。下面是我获取.png的方法:

这就是我想要的东西,例如(用截图制作的):

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-11-17 08:09:10

可以使用tm_view()调整缩放级别

代码语言:javascript
复制
library(sf)
library(tmap)
library(mapview)

coord <- data.frame(Lat=c(0.92, 0.92, 0.93, 0.92, 0.93, 0.93, 1.00, 1.00, 0.99, 0.93),
              Lon=c(104.58, 104.51, 104.57, 104.50, 104.55, 104.51, 104.59, 104.49, 104.6, 104.61))
sdat <- st_as_sf(coord, coords = c("Lon", "Lat"),
                 crs = "+proj=longlat +datum=WGS84 +no_defs")
tmap_mode("view")
Map <- tm_basemap("Esri.WorldTopoMap") +
  tm_shape(sdat) +
  tm_dots(alpha = 1,
          title = "Location") +
  tm_view(set.zoom.limits = c(10, 20))

lf <- tmap_leaflet(Map)
mapshot(lf, file = "Map.png") 

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69998616

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档