如何保存R中mapview生成的特定图层状态的图形视图?
实现方法
1. 调整图层默认显示状态
你可以在生成叠加地图后,直接修改目标图层的显示属性,让loc_postcodes...图层默认处于未勾选状态:
# 生成原始叠加地图 graph_amsterdam <- graph_c_2$map_postcodes_within_max_travel_time + mapview::mapview(graph_c_2_commercieel, legend = FALSE) # 找到对应图层并设置默认不显示(默认第一个图层是postcode图层,若不对可通过names(graph_amsterdam@map$layers)确认索引) graph_amsterdam@map$layers[[1]]$options$show <- FALSE
如果想精准定位图层,可先查看所有图层名称:
# 打印所有图层名称,找到"loc_postcodes..."对应的条目 names(graph_amsterdam@map$layers)
然后将[[1]]替换为对应图层的索引位置即可。
2. 保存调整后的视图
使用mapview配套的mapshot()函数保存地图,支持交互式HTML和静态图片两种格式:
保存为交互式HTML(保留图层控制功能)
mapshot(graph_amsterdam, file = "graph_amsterdam.html")
保存为静态图片(如PNG)
如果需要静态图,可指定图片格式,还能隐藏不必要的控件:
# 若未安装webshot2需先执行:install.packages("webshot2") mapshot(graph_amsterdam, file = "graph_amsterdam.png", remove_controls = c("zoomControl", "layersControl"))
内容的提问来源于stack exchange,提问作者Henk Straten
相关产品推荐
相关产品推荐

