2017-05-30 20 views
0

私は以前に計算したいくつかのラスターレイヤーを動的に表示しようとしています。マーカーと表示されている画像に表示されている値を更新する必要があります。 マーカーでうまく動作しますが、addRasterImageコマンドで何もしないようです。どんな助け?コード:addRasterImageはリーフレットの光沢のあるアプリにレンダリングしません

library(shiny) 
library(leaflet) 
library(RColorBrewer) 

#### Mapa en shiny #### 
ui <- bootstrapPage(
    tags$style(type = "text/css", "html, body {width:100%;height:100%}"), 
    leafletOutput("map", width = "100%", height = "100%"), 
    absolutePanel(top = 10, right = 10, 
       sliderInput("range", "Fecha", 1, length(arch), 
          value = 1, step = 1 
       ) 
) 
) 

server <- function(input, output, session) { 

    # Reactive expression for the data subsetted to what the user selected 
    # filteredData <- reactive({ 
    # a[[input$range]] 
    # }) 

    int.pred<[email protected]@values[!is.na([email protected]@values)] 
    pal<-colorNumeric("RdBu", int.pred) 
    pal2<- pal<-colorNumeric("Spectral", (int.pred)) 

    neess<- seq(1,1000,1) 
    qpal <- colorBin(terrain.colors(4), domain=neess, bins=c(1,10,100,1000,Inf)) 

    output$map <- renderLeaflet({ 
    # Use leaflet() here, and only include aspects of the map that 
    # won't need to change dynamically (at least, not unless the 
    # entire map is being torn down and recreated). 
    leaflet() %>% 
     addTiles(group="OSM (default)") %>% 
     setView(lng=-3.77 , lat =40.36, zoom=6) %>% 
     addMeasure()%>% 
     addRasterImage(rr, colors="Spectral", opacity = 0.7, group ="Krige de Precios") %>% 
     addRasterImage(cropinterp, colors="Spectral", opacity = 0.7, group = "Spline de Precios") %>% 
     addPolylines(data = cropcont, fillOpacity=0.5, fillColor = "transparent",opacity = 0.7,weight = 2, group = "Contorno Precios") %>% 
     addLayersControl(
     baseGroups = c("OSM (default)"), 
     overlayGroups = c("Contorno Precios", "Spline de Precios", "Krige de Precios","Spline Madrid"), 
     options = layersControlOptions(collapsed = FALSE), 
     position="topleft") %>% 
     addLegend("bottomright", pal=pal2, values=int.pred, title = "Precio", opacity = 1)%>% 
     addLegend(pal = qpal, values = neess, opacity = 1, position="bottomleft") 

    }) 
    # Incremental changes to the map (in this case, replacing the 
    # circles when a new color is chosen) should be performed in 
    # an observer. Each independent set of things that can change 
    # should be managed in its own observer. 
    observeEvent(input$range, { 
    nn<- input$range 
     leafletProxy("map", session)%>% 
     clearMarkers()%>% 
     clearMarkerClusters()%>% 
     addCircleMarkers(lat = timeline$Latitud, lng = timeline$Longitud..WGS84., fillColor = pal, 
         label = paste(as.character(timeline$Rótulo), timeline[,nn+9]), 
         labelOptions = labelOptions(opacity = 0.9,noHide = T), 
         clusterOptions = markerClusterOptions(), group = "OSM (default)") 
    }) 

    observe({ 
    na<- input$range 
    leafletProxy("map", session)%>% 
     addRasterImage(a[[na]], opacity = 0.7) 
    }) 
} 

shinyApp(ui, server) 

はどうやらコードは、このビットには反応しない:

observe({ 
     na<- input$range 
     leafletProxy("map", session)%>% 
      addRasterImage(a[[na]], opacity = 0.7) 
     }) 

答えて

0

【課題】:私はこの問題への答えを見つけ

を掘るたくさんのhere

問題は、ラスタイメージがの下にレンダリングされたことです。タイル(何が起こるのかは分からないが、それは本当のバグであった)。リンクされた質問の回答では、入力が変更されるたびにタイルを削除して動的に追加することで解決します。

関連する問題