グローバル管理領域 からポリゴンを追加して、クリック可能にするにはどうすればよいですか。
私が試したdocs
で説明する簡単な方法は次のとおりです。
adm <- getData('GADM', country='UKR', level=1)
leaflet() %>% addTiles() %>% addPolygons(data=adm, weight = 3, fillColor = col)
しかし、後でonClickアクションを含むリーフレットマップが必要だと想像してみてください。
SuperZip に基づいて、次のようなものが必要です
map <- createLeafletMap(session, "map")
session$onFlushed(once=TRUE, function() {
map$addPolygon(...)
})
ただし、addPolygonメソッドはなく、SpartialPolygons
でどのように機能するのか混乱しています。
https://ropensci.org/blog/2013/10/23/style-geojson-polygon/ またはこれと同様にgeoJSON
に変換してみました SO質問 、しかしやって
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
それを行う方法はありますか?または私は何が間違っているのですか?
質問を数回読みましたが、問題を本当に理解しているかどうかはわかりません。ただし、以下のコードは、各admの名前を表示するポップアップのように、単純な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)
```