如何在R的Leaflet中将preferCanvas标志设置为True

时间:2018-09-20 09:57:59

标签: javascript r leaflet r-leaflet

我正在使用Leaflet R包来渲染Leaflet地图。我想用Canvas而不是SVG渲染地图。为此,我需要在“传单选项”中将 preferCanvas 标志设置为true。但是我不能在Leaflet for R中这样做(地图仍在SVG中渲染)。 Here是使用JavaScript的Canvas地图的工作演示。

Server.R:

    output$map <- renderLeaflet({
      leaflet(
        options = leafletOptions(preferCanvas = TRUE)
      ) %>%
        setMaxBounds(lng1 = -180, lng2 = +180, lat1 = -90, lat2 = +90)
    })

    observe({
      if(!is.null(input$map_bounds)){
        if(input$map_zoom<3){
          boundsBuff<- input$map_bounds
          leafletProxy("map") %>%
            setView(lng=(boundsBuff$north + boundsBuff$south)/2,
                    lat=(boundsBuff$east + boundsBuff$west)/2,
                    zoom = 3
            )
        }
     })

UI.R:

leafletOutput("map", width = "100%", height = "100%")

根据this传单文档,看来我做得正确,但仍然无法正常工作,在这里我做错了什么?

1 个答案:

答案 0 :(得分:0)

我认为这是Leaflet中的错误,现已解决(请参阅CHANGELOG版本1.3.2(2018-07-17)) “在所有窗格中都要使用preferredCanvas选项(mjumbewu#6019)”

R的Leaflet软件包中的文档于2018年8月27日提及Leaflet 1.3.1版