使用mapview的addStaticLabels时地图轮廓消失,求助排查解决
解决mapview添加addStaticLabels后区域轮廓消失的问题
问题原因
addStaticLabels函数默认不会自动保留原mapview生成的图层,若未明确指定关联的空间数据,会导致原图层被覆盖,仅显示标签。
解决方案
方案1:用mapview原生参数直接添加标签(最简单)
无需额外调用addStaticLabels,直接在mapview函数中指定label参数,即可同时显示区域轮廓和标签:
library(mapview) mapview(franconia, label = franconia$NAME_ASCI)
方案2:保留原mapview图层并添加静态标签
如果必须使用addStaticLabels,先提取mapview的底层leaflet地图对象,再关联空间数据添加标签:
library(mapview) library(leafem) # 创建mapview对象并提取leaflet地图 m <- mapview(franconia)@map # 添加静态标签并指定空间数据 m %>% addStaticLabels(data = franconia, label = franconia$NAME_ASCI)
方案3:管道中明确传递空间数据
在管道操作中直接给addStaticLabels指定data参数,确保原图层不被覆盖:
library(mapview) library(leafem) mapview(franconia) %>% addStaticLabels(data = franconia, label = franconia$NAME_ASCI)
内容的提问来源于stack exchange,提问作者Salvador
相关产品推荐
相关产品推荐

