【发布时间】:2020-05-22 05:58:40
【问题描述】:
我正在尝试使用传单制作地图。我上传了 216 个区的 shapefile。我还有一个数据集,其中包含来自 216 个地区中的 7 个地区的信息。
我希望地图中的区域没有值或灰色的 0% 表示没有足够的信息”。而具有实际值 (>0%) 的区域在其相应的 bin 之后显示为颜色。
当我尝试上传我的数据集和 shapfile 时,我得到了一张到处都是彩色区域的地图。根据我的数据集,假设有 4 个区域(>0%)的颜色。但这不是我在地图上看到的。
如何确保只有我的数据集中的区域在它应该亮的地方亮起来,而不是在整个地图上重复? (同时将所有其他区域的背景保持为灰色)
到目前为止,这是我用来实现地图的代码:
districtsg <-readOGR("sample/copyfile/Districts/Map_of_Districts_.shp")
districtsg <- sp::spTransform(districtsg, CRS("+proj=longlat +datum=WGS84"))
wpnew <- wpnew [order(match(wpnew$District,districtsg$NAME)),]
bins <- c(0.1,2.0,5.0,10.0,25.0,40.0,50.0)
pal<- colorBin("YlOrRd",domain=wpnew$per.content,bins=bins)
m<- leaflet() %>%
setView(lng = -1.0232,lat=7.9465,zoom = 6) %>%
addProviderTiles(providers$Stamen.Toner) %>%
addPolygons(data =districtsg,
weight = 1,
smoothFactor = 0.5,
color = "White",
fillOpacity = 0.8,
fillColor= ~pal(wpnew$per.content),
highlight = highlightOptions(
weight = 5,
color = "#666666",
dashArray = "",
fillOpacity = 0.7,
bringToFront = TRUE
))
m
labels <- paste( "<p>","District:", districtsg$NAME,"</p>",
"<p>", "% of reports that are content:",round(wpnew$per.content,digits = 3),"</p>",
"<p>", "Total reports labelled as a content:",round(wpnew$totalcontent,digits = 3),"</p>",
"<p>", "Total reports from this district:",round(wpnew$totalreports,digits = 3),"</p>",sep = "" )
m<- leaflet() %>%
setView(lng = -1.0232,lat=7.9465,zoom = 6) %>%
addProviderTiles(providers$Stamen.Toner) %>%
addPolygons(data =districtsg,
weight = 1,
smoothFactor = 0.5,
color = "White",
fillOpacity = 0.8,
fillColor= pal(wpnew$per.content),
label = lapply(labels,HTML)) %>%
addLegend(pal=pal,
values = wpnew$per.content,
opacity = 0.7,
"topright")
m
districts totalreports totalcontent per.content
1 Jomoro 4 2 50.00000
2 Ellembelle 2 1 50.00000
3 Tarkwa Nsuaem 1 0 0.00000
4 Bia West 1 0 0.00000
5 Bodi 2 0 0.00000
6 Accra Metropolis 3 1 33.33333
7 Adenta 3 1 33.33333
shapefile 可以在这里下载:
https://data.gov.gh/dataset/shapefiles-all-districts-ghana-2012-216-districts
【问题讨论】:
-
我无法访问您的数据源,但我使用学区数据,很乐意帮助您更好地了解数据集。
-
嗨,Susan,我的数据集来自抽样调查。在我的数据集中,有 7 个不同地区的 7 个人。我的形状文件共有 216 个区。我希望我的样本中有 4 个地区的百分比内容列中的值大于 0,以显示在传单地图上。现在,我看到几个区域亮了,而实际上假设只有 4 个亮了。我希望我提供了您需要的信息。如果您需要更多信息,请告诉我