gpt4 book ai didi

r - 将多边形添加到 R Shiny 传单 map

转载 作者:行者123 更新时间:2023-12-03 22:29:54 25 4
gpt4 key购买 nike

如何从 Global Administrative areas 添加多边形,所以它们是可点击的。
docs中描述的简单方法我试过的是

adm <- getData('GADM', country='UKR', level=1)
leaflet() %>% addTiles() %>% addPolygons(data=adm, weight = 3, fillColor = col)

但想象一下,我想要一个传单 map ,稍后会有 onClick 操作。

基于 SuperZip ,我需要有类似的东西
  map <- createLeafletMap(session, "map")
session$onFlushed(once=TRUE, function() {
map$addPolygon(...)
})

但是,没有 addPolygon 方法,我很困惑它如何用于 SpartialPolygons .

我也尝试转换为 geoJSON ,类似于 https://ropensci.org/blog/2013/10/23/style-geojson-polygon/或此 SO question ,但做
  polys <- fromJSON(<json data file>)
map <- createLeafletMap(session, "map")
session$onFlushed(once=TRUE, function() {
map$geoJson(polys)
})

给我一个错误
Error in func() : attempt to apply non-function

有没有办法做到这一点?或者我做错了什么?

最佳答案

我不确定我是否真的理解这个问题,尽管我通读了几次问题。然而,下面的代码似乎对我有用,因为它可以很容易地与简单的 onClick 结合使用。事件,就像一个弹出窗口,显示每个广告的名称。单元:

---
title: "Ukraine"
runtime: shiny
output: html_document
---

```{r, echo=FALSE, message=F, warning=F}
library(leaflet)
library(raster)

adm <- getData('GADM', country='UKR', level=1)

popup <- paste0("<strong>Name: </strong>",
adm$NAME_1)

leaflet() %>%
addTiles() %>%
addPolygons(data=adm, weight = 2, fillColor = "yellow", popup=popup)
```

关于r - 将多边形添加到 R Shiny 传单 map ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29480795/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com