Как организовать navListPanel и navbarPage - PullRequest
0 голосов
/ 16 июня 2020

Я хочу создать приложение Shiny с панелью Navlist слева. При щелчке панели вкладок в этом списке должна открываться страница navbarPage с собственными элементами управления. Хотя у меня есть приложение basi c для работы, я хотел бы организовать код более эффективно, когда я просто вызываю функцию, которая заменяет всю страницу навигационной панели. Вот что у меня есть сейчас. Как видно, на странице Page1 много кода. Я бы хотел переместить это в отдельный файл и включить в ui.R. У меня есть аналогичные большие функции для Page2 и Page3 и так далее. Есть ли способ просто использовать ui.R, используя код, который является другой функцией / файлом R

shinyUI(fluidPage(

## Title and headings
titlePanel("Demo navlist panel navigation layout in shiny"),
h5(
  "Test"
),

 ## Beginning of navlistPanel
navlistPanel(
 widths = c(2, 10),
 "Data", 
 tabPanel("Page1", navbarPage("Batsmen!",
                             # Batsman tab
                             tabPanel("IPL batsman",
                                      h4('Analyze IPL batsman performances'),
                                      sidebarPanel(
                                        selectInput('batsmanFunc', 'Select function', 
 IPLBatsmanFuncs),
                                        selectInput('batsman', 'Select batsman', 
IPLBatsmen,selectize=FALSE, size=20)
                                      ),
                                      mainPanel(
                                        plotOutput('batsmanPlot')

                                        )
                                      )

                             ),
                             # Bowlers tab
                             tabPanel("IPL bowlers",

                                      h4('Analyze IPL bowler performances'),

                                      sidebarPanel(
                                        selectInput('bowlerFunc', 'Select function', 
  IPLBowlerFuncs),
                                        selectInput('bowler', 'Select IPL bowler', 
  IPLBowlers,selectize=FALSE, size=20)


                                      ),
                                      mainPanel(
                                        plotOutput('bowlerPlot')

                                        )
                                      )


                             ))),
  tabPanel("Page2",
         tableOutput("table"),
         h3("Test")),
  tabPanel("Page3", tableOutput("test2"))
 )))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...