2017-02-21 43 views
1

У меня есть простое блестящее приложение с раскрывающимися списками районов Афганистана и картами листовки того же самого. enter image description hereinfoBox/valueBox от shinyDashboard in shiny

Файл формы можно получить в этом link - с помощью AFG_adm2.shp из http://www.gadm.org/download

вот код приложения:

library(shiny) 
library(leaflet) 
library(rgdal) 
library(sp) 

afg <- readOGR(dsn = "data", layer ="AFG_adm2", verbose = FALSE, stringsAsFactors = FALSE) 

ui <- fluidPage(
    titlePanel("Test App"), 
    selectInput("yours", choices = c("",afg$NAME_2), label = "Select Country:"), 
    leafletOutput("mymap") 

) 

server <- function(input, output){ 
    output$mymap <- renderLeaflet({ 
    leaflet(afg) %>% addTiles() %>% 
     addPolylines(stroke=TRUE, color = "#00000", weight = 1) 
    }) 
    proxy <- leafletProxy("mymap") 

    observe({ 
    if(input$yours!=""){ 
     #get the selected polygon and extract the label point 
     selected_polygon <- subset(afg,afg$NAME_2==input$yours) 
     polygon_labelPt <- [email protected][[1]]@labpt 

     #remove any previously highlighted polygon 
     proxy %>% removeShape("highlighted_polygon") 

     #center the view on the polygon 
     proxy %>% setView(lng=polygon_labelPt[1],lat=polygon_labelPt[2],zoom=7) 

     #add a slightly thicker red polygon on top of the selected one 
     proxy %>% addPolylines(stroke=TRUE, weight = 2,color="red",data=selected_polygon,layerId="highlighted_polygon") 
    } 
    }) 
} 

# Run the application 
shinyApp(ui = ui, server = server) 

Я хочу infoBox или valueBox как виджет от shinyDashboard в отобразите некоторые данные (например, население района) под картой, основанной на выборе пользователя. Как я могу это сделать?

ответ

1

Вам необходимо изменить структуру программы и добавить страницу панели инструментов в интерфейс.

Вот несколько ссылок, просто посмотрите. вы узнаете !!!

https://rstudio.github.io/shinydashboard/structure.html

https://rdrr.io/cran/shinydashboard/man/valueBox.html

+0

это не может быть сделано в блестящем приложении? – ProgSnob

+0

Это может быть .. некоторые изменения, необходимые в вашем блестящем приложении. например, вам нужно загрузить пакет shinydashboard. попробуйте выше ссылки –

+0

Значит, вы хотите переключиться на shinydashboard? – ProgSnob