R语言leafpop包,addPopupGraphs函数,点击标注显示图层

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')
# 散点太多就会很卡
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容