r - 如何在 r 中的 mapview 地图上标记点
问题描述
请帮我在地图视图上标记点。我可以绘制点确定。然后我想将这些点标记为“A 点”、“B 点”。我也更喜欢在没有点标记的情况下执行此操作,即我将只使用坐标来定位标签。
library(sf)
library(mapview)
library(tidyverse)
points <- tribble(~name, ~lat, ~lon,
'Point A', -38.119151, 145.401893,
'Point B', -38.127870, 145.685598)
points_sf <- st_as_sf(points, coords = c("lon", "lat"), crs = 4326)
mapview(points_sf)
解决方案
这由 支持leaflet
,这mapview
取决于 - 但 mapview 在顶部添加了其他行为。
这是最接近的等价物mapview
以及如何完全按照 base 中的要求进行操作leaflet
。
注意: mapview::addStaticLabels
是leaflet::addLabelOnlyMarkers
.
library(sf)
library(mapview)
library(leaflet)
library(tidyverse)
points <- tribble(~name, ~lat, ~lon,
'Point A', -38.119151, 145.401893,
'Point B', -38.127870, 145.685598)
points_sf <- st_as_sf(points, coords = c("lon", "lat"), crs = 4326)
leaflet(points_sf) %>%
addTiles() %>%
addLabelOnlyMarkers(label = ~name,
labelOptions = labelOptions(noHide = T,
direction = 'top',
textOnly = T))
mapview(points_sf) %>%
addStaticLabels(label = points$name,
noHide = TRUE,
direction = 'top',
textOnly = TRUE,
textsize = "20px")
推荐阅读
- firebase - angularfire2 firebase config在离子应用程序中动态切换
- parameters - 将度量值乘以单个值
- javascript - 文件未按正确顺序解析
- browser-cache - 强制跨浏览器重新加载缓存的简单代码
- three.js - 三个js改变directlight的shadow camera的位置
- java - 未使用 Gradle 发布的 Maven 依赖项
- javascript - 需要在容器数组中查找数组,该数组在应用程序脚本(首选)或 java 脚本中的特定位置包含特定文本
- django - 激活用户 Django 2.1
- ubuntu - ASP.Net Core 应用服务只监听 Ubuntu 上的 5000 端口
- java - 从 Android 写入 csv 文件。