Leafletoutput не отображается в панели инструментов тела - PullRequest
0 голосов
/ 17 мая 2019

Привет! Я использую Shinydashboard для создания визуализации для некоторых растровых файлов. Я использую leafletOutput для отображения карты.

В первом tabItem, где он называется KmeansOutput, я хотел бы отобразить карту листовки. Когда я не включаю selectInput, он отображает карту, но как только я включаю selectInput, он не отображает карту. Я не уверен, какая часть пошла не так. Заранее спасибо !!

Вот код раздела UI:

library(shinydashboard)
library(leaflet)


sidebar <- dashboardSidebar(
    sidebarMenu(
        menuItem("KmeansOutput", tabName = "kmeans", icon = icon("kmeans"),
                 selectInput("run1",
                             "SoilAllWeatherAll",
                             choices = c('4' = 1, '5' = 2),
                             multiple = TRUE)
),
        menuItem("HistoricalWeather", icon = icon("weather"), tabName = "weather"),
        menuItem("SoilMap", icon = icon("soil"), tabName = "soil")
    )
)

body <- dashboardBody(
    tabItems(
        tabItem(tabName = "kmeans",
                leafletOutput("map", height = 700)
        ),

        tabItem(tabName = "weather",
                h2("weather")),
        tabItem(tabName = "soil",
                h2('soil'))
    )
)

    # Put them together into a dashboardPage
ui <- dashboardPage(
        dashboardHeader(title = "Genome Prediction"),
        sidebar,
        body)

вот сервер:

server <- function(input, output) {

    output$map <- renderLeaflet({
        leaflet() %>%
            addTiles() 
    })
}

shinyApp(ui, server)

1 Ответ

1 голос
/ 17 мая 2019

Вам необходимо добавить подпункт к элементу боковой панели k-средних следующим образом.

sidebar <- dashboardSidebar(
  sidebarMenu(
    menuItem("KmeansOutput", #icon = icon("kmeans"),
             menuSubItem(
               "K-Means Map", tabName = "kmeans", icon = icon("calendar")
             ),
             selectInput("run1",
                         "SoilAllWeatherAll",
                         choices = c('4' = 1, '5' = 2),
                         multiple = TRUE)
    ),
    menuItem("HistoricalWeather", tabName = "weather"), #icon = icon("weather"),
    menuItem("SoilMap", tabName = "soil")#, icon = icon("soil")
  )
)
...