1
Using arbitrary Leaflet JS plugins with Leaflet for R의 예제 코드를 사용하여 리플릿 사이드 바이 사이드 플러그인을 구현하려고했습니다. 지금까지는 간단하고 성공하지 못했습니다. 나는 내가 뭘 잘못하고 있는지 알 수 없었다. 대단히 감사합니다. 감사합니다,R에 전단계 사이드 바이 사이드 플러그인 사용
library(leaflet)
library(htmltools)
library(htmlwidgets)
LeafletSideBySidePlugin <- htmlDependency("leaflet-side-by-side","2.0.0",
src = c(href="https://github.com/digidem/leaflet-side-by-side"),
script="leaflet-side-by-side.js")
# A function that takes a plugin htmlDependency object and adds
# it to the map. This ensures that however or whenever the map
# gets rendered, the plugin will be loaded into the browser.
registerPlugin <- function(map, plugin) {
map$dependencies <- c(map$dependencies, list(plugin))
map
}
leaflet() %>% addTiles() %>%
setView(lng = 12, lat = 50, zoom = 4) %>%
# Register leaflet-side-by-side plugin on this map instance
registerPlugin(LeafletSideBySidePlugin) %>%
onRender("
function(el, x) {
var mylayer1 = L.tileLayer(
'http://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png',{
maxZoom: 18
})
var mylayer2 = L.tileLayer(
'//stamen-tiles-{s}.a.ssl.fastly.net/watercolor/{z}/{x}/{y}.png',{
maxZoom: 14
})
L.control.sideBySide(mylayer1, mylayer2).addTo(this);
")
사이드 바이 사이드가 매우 좋습니다. 똑같은 것은 아니지만'mapview'는 리플릿 동기화 http://environmentalinformatics-marburg.github.io/mapview/sync/sync.html을 제공합니다. – timelyportfolio
좋아요. 반짝이는 'sync'또는 'latticeView'라고 불리는 플롯을 어떻게 호출 할 수 있는지 알고 싶습니다. 나는 plotOutput과 leafletOutput을 시도했지만 어떤 디스플레이도 보지 못했다. – SatishR
@timelyportfolio '동기화'와 'latticeView'를 모두 사용하여 매우 멋진 작업을 수행 할 수 있었지만 다음과 같은 방식으로 빛나는했지만 성공하지 못했습니다. 의견을 보내 주셔서 대단히 감사드립니다. server.r : output $ plot1 <- renderLeaflet ( m1 <-leaflet (EUGegrphclData) %> % addPolygons (..., fillColor = "red") m2 <-leaflet (EUGegrphclData) % > % addPolygons (..., fillColor = "blue") sync (m1, m2) } ' EUGegraphclData - ui.r의 공간 객체입니다 'leafletOutput ('plot1') – SatishR