这是整个代码
poi = readOGR("costa_rica_poi.shp")
poi2= readOGR("CRI_adm1.shp")
ui <- fluidPage(
titlePanel("El mapa"),
leafletOutput("mapa") ,
selectInput("mapa", label = "Seleccione el Tipo", choices = c("San Jose","Cartago","Heredia","Limon","Alajuela","Guanacaste","Puntarenas")),
selectInput("p", label = "Seleccione el Tipo", choices = poi@data$NAME)
)
server <- function(input, output) {
base1=reactive({
poi@data$NAME == input$p
})
output$mapa <- renderLeaflet({
leaflet() %>%
addProviderTiles("Esri.WorldStreetMap") %>% setView(lat = 9.5, -83, zoom=7) %>%
addMarkers(lng = poi@coords[base1(),1],
lat = poi@coords[base1(),2]) %>% addPolygons(data=poi2)
})
}
下一个是我得到的:
我想做什么?
“ poi”是包含国家/地区信息的.shp,而poi2是包含各州经纬度的文件
我上面得到的是所有州的多边形,但是我真正想要的是,例如当我在下面的幻灯片中选择“圣何塞”时,该多边形仅出现在该州,而不是整个州国家,并且当我选择州“ Cartago”时,多边形仅出现在Cartago中,而不出现在其他州中,依此类推...
我该怎么做?
更新:带有状态的向量的名称为“ NAME_1”