问题描述
下面是我的代码。我有一个工作地图,单击该地图可以放大每个县,但是我希望根据特定位置的邮政编码数量和每个州的数据计数,将地图的阴影变暗或变亮。
任何帮助将不胜感激!
require(leaflet)
require(maps)
require(maptools)
require(sp)
require(rgeos)
zipdata=data2$LossZipCode
statedata=data2$LossstateAbbreviation
mapStates=map("state",fill=TRUE,plot=FALSE)
mapCounty=map("county",plot=FALSE)
shinyApp(
ui = fluidPage(leafletoutput('myMap'),br(),leafletoutput('myMap2')),server <- function(input,output,session) {
#leafletoutput("myMap"),leafletoutput("myMap2")
output$myMap=renderLeaflet({
leaflet()%>%
addProviderTiles("Stamen.TonerLite",options=providerTileOptions(Nowrap=TRUE))%>%
addpolygons(lng=mapStates$x,lat=mapStates$y,fillColor=topo.colors(10,alpha=NULL),stroke=FALSE)
})
observeEvent(input$myMap_shape_click,{
click <- input$myMap_shape_click
if(is.null(click))
return()
lat <- click$lat
lon <- click$lng
coords <- as.data.frame(cbind(lon,lat))
point <- SpatialPoints(coords)
mapStates_sp <- map2Spatialpolygons(mapStates,IDs = mapStates$names)
i <- point [mapStates_sp,]
selected <- mapStates_sp [i]
mapCounty_sp <- map2Spatialpolygons(mapCounty,IDs = mapCounty$names)
z <- over(mapCounty_sp,selected)
r <- mapCounty_sp[(!is.na(z))]
output$myMap2 <- renderLeaflet({
leaflet() %>%
addProviderTiles("Stamen.TonerLite",options = providerTileOptions(Nowrap = TRUE)) %>%
addpolygons(data=r,fillColor = topo.colors(10,alpha = NULL),stroke = FALSE)
})
})
})
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)