据我所知,这可以通过两种方式实现。
- 简单闪亮的应用程序:
您可以使用tabPanel(title, ...) 函数创建选项卡,然后将所有tabPanel()s 包装在tabsetPanel() 函数中。
因此,在您的情况下,您可以将第一个应用程序的所有 UI 元素放在第一个 tabPanel('unique_title') 中,依此类推。
这将帮助您创建多个可独立查看的部分。
您可以参考这两个链接以了解更多信息
http://shiny.rstudio.com/reference/shiny/latest/tabPanel.html
- 正如@Michal 建议的那样,使用
shinydashboard:
shinydashnoard 是另一个软件包,您必须安装它才能使用闪亮的此功能。它基本上有一个带有标题、侧边栏和正文的预定义结构。
基本结构如下图:
library(shiny)
library(shinydashboard)
ui <- dashboardPage(
dashboardHeader(),
dashbaordSidebar(),
dashboardBody()
)
server <- function(input,output,server){...}
通常,dashboardSidebar() 用于导航。但是,它可以包含menuItem(),其行为类似于tabPanel() 中的选项卡。
对于您的情况,您可以在sidebarMenu() 中添加多个menuItem()s,如下所示
更新代码
library(shiny)
library(shinydashboard)
ui <- dashboardPage(
dashboardHeader(),
dashboardSidebar(
sidebarMenu(
menuItem("first_app", tabName = "first_app"),
menuItem("second_app", tabName = "second_app")
)
),
dashboardBody(
tabItems(
tabItem(tabName = "first_app",
h2("First App Content")
),
tabItem(tabName = "second_app",
h2("Second App Content"))
)
)
)
server <- function(input,output,server){}
shinyApp(ui,server)
这将创建一个包含 2 个菜单项的基本仪表板页面。
您也可以参考下面的链接以了解更多有关闪亮仪表板结构的信息
https://rstudio.github.io/shinydashboard/structure.html
我希望这会有所帮助:)