% addPolygons">
gpt4 book ai didi

r - Leaflet R derivePolygons 缺少 lat 缺少 long

转载 作者:行者123 更新时间:2023-12-02 05:52:26 28 4
gpt4 key购买 nike

我正在尝试在 map 上绘制一些疾病事件数据的位置。

我用它来导入数据:

ByTown<-readOGR(dsn="C:/temp/lyme/Towns", layer="Towns", encoding = "UTF-8", verbose= FALSE)

检查类(class):

class(ByTown)
#getting this result
[1] "SpatialPolygonsDataFrame"
attr(,"package")
[1] "sp"

然后,我将所有因素转换为字符数据,并检查是否仍然有一个使用 classSpatialPolygonsDataFrame,我这样做:

然后我将要合并的数据格式化为与原始数据相同的标题大小写:

townCount$City<-str_to_title(townCount$City)

然后我将计数数据 geo_join 到空间多边形数据框:

ByTown<-geo_join(ByTown, townCount,"MCD_NAME", "City")

然后我设置调色板并运行映射:

pal = colorQuantile("PuOr",ByTown$count, n=5 )
map<-leaflet(ByTown) %>%
addProviderTiles("CartoDB.Positron")%>%
addPolygons(fillColor = ~pal(count),
color = "#000000",
stroke = TRUE,
weight = 1,
smoothFactor = 0.5,
options(viewer = NULL))
map

我收到此错误:

Error in derivePolygons(data, lng, lat, missing(lng), missing(lat), "addPolygons") : 
addPolygons must be called with both lng and lat, or with neither.

我查看了坐标槽,里面有数据...我对这个错误感到困惑,并且在网上找不到任何有用的答案。这是坐标槽中第一个多边形的头部:

head(nByTown@polygons[[1]]@Polygons[[1]]@coords )

[,1] [,2]
[1,] 1036519 916318.7
[2,] 1036039 916355.8
[3,] 1031757 916299.7
[4,] 1027474 916244.5
[5,] 1026709 916198.1
[6,] 1026826 916248.3

任何人都遇到此问题,找出根本原因并解决它吗?

最佳答案

不要忘记添加 data = ... addPolygons() 中的变量名称如果您没有在leaflet()中提供它称呼。我收到了同样的错误并花了几个小时寻找解决方案:(。

不起作用:

leaflet() %>%
addTiles() %>%
addPolygons(ByTown)

并返回:

Error in derivePolygons(data, lng, lat, missing(lng), missing(lat), "addPolygons") : 
addPolygons must be called with both lng and lat, or with neither.

这有效:

leaflet() %>%
addTiles() %>%
addPolygons(data = ByTown)

关于r - Leaflet R derivePolygons 缺少 lat 缺少 long,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42237530/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com