001
003
002
点击标注点显示图像图形照片或表格
# Tue Nov 10 01:39:24 2020 -
# 字符编码:UTF-8
# R 版本:R x64 4.0.3 for window 10
# cgh163email@163.com
# 个人笔记不负责任
# —— 拎了个梨🍐
.rs.restartR()
require()
rm(list=ls());gc()
library(leaflet)
library(sf)
pnt = st_as_sf(data.frame(x = 174.764474, y = -36.877245),
coords = c("x", "y"),
crs = 4326)
img = "001.png"
# 已准备好sf点和照片路径
#
leaflet() %>%
addTiles() %>%
addCircleMarkers(data = pnt, group = "pnt") %>%
addPopupImages(img, group = "pnt")
# 多个照片文件(类型)
library(sf)
images = c(img,
"https://upload.wikimedia.org/wikipedia/commons/9/91/Octicons-mark-github.svg",
"https://www.r-project.org/logo/Rlogo.png",
"https://upload.wikimedia.org/wikipedia/commons/d/d6/MeanMonthlyP.gif")
pt4 = data.frame(x = jitter(rep(174.764474, 4), factor = 0.01),
y = jitter(rep(-36.877245, 4), factor = 0.01))
pt4 = st_as_sf(pt4, coords = c("x", "y"), crs = 4326)
leaflet() %>%
addTiles() %>%
addMarkers(data = pt4, group = "points") %>%
addPopupImages(images, group = "points", width = 400) # NOTE the gif animation
#本地图像
pnt = st_as_sf(data.frame(x = 174.764474, y = -36.877245),
coords = c("x", "y"), crs = 4326)
img = system.file("img","Rlogo.png",package="png")
leaflet() %>%
addTiles() %>%
addCircleMarkers(data = pnt, group = "pnt") %>%
addPopupImages(img, group = "pnt")
# Tue Nov 10 01:42:17 2020 --end
# Tue Nov 10 01:48:08 2020 ---diy---------------------------
# myimg <- system.file("img","Rlogo.png",package="png")
myimg <- "https://upload.wikimedia.org/wikipedia/commons/9/91/Octicons-mark-github.svg"
map.dt <- read.csv('https://gitee.com/youmigo/open-file/raw/master/sf&gis++/lonlat_thc.csv')
head(map.dt)
# X.3 lon lat origin X lon.1 lat.1 destination X.1 X.2
# 1 1 113.3175 23.13750 p1 2000 113.3188 23.13689 p2 -3 NA
# 2 2 113.3188 23.13689 p2 2001 113.3207 23.13609 p3 -23 NA
# 3 3 113.3207 23.13609 p3 2002 113.3222 23.13539 p4 -99 NA
# 用坐标构建sf散点:
map.sf <- data.frame(lng=map.dt[,3],lat=map.dt[,2]) %>%
st_as_sf(coords = c("lat", "lng"), crs = 4326)
leaflet() %>%
addTiles() %>%
addCircleMarkers(data = map.sf)
leaflet() %>%
addTiles() %>%
addCircleMarkers(data = map.sf,group = 'mymap') %>% # 要定义图层id名称:mypmap
addPopupImages(image = myimg,group = 'mymap')
# 散点太多就会很卡