Leaflet 2.0.0 choropleth 未显示(dashArray 错误)
Leaflet 2.0.0 choropleth not showing (dashArray error)
我正在使用 leaflet
和 shiny
包在网络浏览器中创建交互式地图 (Chrome)。将 leaflet
从版本 1.1.0 更新到版本 2.0.0 时,某些等值线图停止正确显示:大多数(如果不是全部)多边形无法显示。更奇怪的是 R 没有显示任何错误或警告。
如我所料
我得到了什么
我很确定这个错误与新的 leaflet
版本有关,因为这个程序在更新之前 运行 没问题,并且从那以后就没有改变过(除了一个小的修复, 与 this issue).
有关
会话信息
R version 3.4.3 (2017-11-30)
Platform: x86_64-pc-linux-gnu (64-bit)
Running under: Ubuntu 16.04.3 LTS
Matrix products: default
BLAS: /usr/lib/libblas/libblas.so.3.6.0
LAPACK: /usr/lib/lapack/liblapack.so.3.6.0
locale:
[1] LC_CTYPE=en_US.UTF-8 LC_NUMERIC=C LC_TIME=en_US.UTF-8 LC_COLLATE=en_US.UTF-8
[5] LC_MONETARY=en_US.UTF-8 LC_MESSAGES=en_US.UTF-8 LC_PAPER=en_US.UTF-8 LC_NAME=C
[9] LC_ADDRESS=C LC_TELEPHONE=C LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C
attached base packages:
[1] stats graphics grDevices utils datasets methods base
other attached packages:
[1] sp_1.2-7
loaded via a namespace (and not attached):
[1] compiler_3.4.3 tools_3.4.3 grid_3.4.3 lattice_0.20-35
我设法通过消除 addPolygons
函数中所有提到的 dashArray
来解决问题。
在下面的代码中,我删除了行 dashArray = "",
leafletProxy("map") %>%
addPolygons(
data = sp,
stroke = FALSE,
fillOpacity = 0.9,
smoothFactor = 0.5,
color = colors,
group = "Analysis",
highlight = highlightOptions(
weight = 10,
color = "#666",
dashArray = "",
fillOpacity = 1,
bringToFront = TRUE,
stroke = FALSE
),
label = label
) %>%
addLegend(
position = "bottomright",
pal = colorPalette,
values = colorValues,
layerId = "legendColors",
title = legendTitle
)
这个 dashArray
不知何故导致了 javascript 中的错误 (?)。无论如何,当我在浏览器中查看控制台时,出现以下错误,这是解决问题的线索。
我希望这可以帮助其他人解决这个非常神秘的错误!
我正在使用 leaflet
和 shiny
包在网络浏览器中创建交互式地图 (Chrome)。将 leaflet
从版本 1.1.0 更新到版本 2.0.0 时,某些等值线图停止正确显示:大多数(如果不是全部)多边形无法显示。更奇怪的是 R 没有显示任何错误或警告。
如我所料
我得到了什么
我很确定这个错误与新的 leaflet
版本有关,因为这个程序在更新之前 运行 没问题,并且从那以后就没有改变过(除了一个小的修复, 与 this issue).
会话信息
R version 3.4.3 (2017-11-30)
Platform: x86_64-pc-linux-gnu (64-bit)
Running under: Ubuntu 16.04.3 LTS
Matrix products: default
BLAS: /usr/lib/libblas/libblas.so.3.6.0
LAPACK: /usr/lib/lapack/liblapack.so.3.6.0
locale:
[1] LC_CTYPE=en_US.UTF-8 LC_NUMERIC=C LC_TIME=en_US.UTF-8 LC_COLLATE=en_US.UTF-8
[5] LC_MONETARY=en_US.UTF-8 LC_MESSAGES=en_US.UTF-8 LC_PAPER=en_US.UTF-8 LC_NAME=C
[9] LC_ADDRESS=C LC_TELEPHONE=C LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C
attached base packages:
[1] stats graphics grDevices utils datasets methods base
other attached packages:
[1] sp_1.2-7
loaded via a namespace (and not attached):
[1] compiler_3.4.3 tools_3.4.3 grid_3.4.3 lattice_0.20-35
我设法通过消除 addPolygons
函数中所有提到的 dashArray
来解决问题。
在下面的代码中,我删除了行 dashArray = "",
leafletProxy("map") %>%
addPolygons(
data = sp,
stroke = FALSE,
fillOpacity = 0.9,
smoothFactor = 0.5,
color = colors,
group = "Analysis",
highlight = highlightOptions(
weight = 10,
color = "#666",
dashArray = "",
fillOpacity = 1,
bringToFront = TRUE,
stroke = FALSE
),
label = label
) %>%
addLegend(
position = "bottomright",
pal = colorPalette,
values = colorValues,
layerId = "legendColors",
title = legendTitle
)
这个 dashArray
不知何故导致了 javascript 中的错误 (?)。无论如何,当我在浏览器中查看控制台时,出现以下错误,这是解决问题的线索。
我希望这可以帮助其他人解决这个非常神秘的错误!