r - 有自己的侧边栏和主面板的选项卡可以 Shiny 吗?

标签 r shiny

我想为不同的选项卡显示不同的输入。所以我尝试用几个 tabPanel 构建一个页面。但是,我不能像下面这样:

library(shiny)

shinyUI(pageWithSidebar(
  headerPanel("Header"),

  tabsetPanel(
    tabPanel(
      headerPanel("Tab 1"),
      sidebarPanel(
        selectInput("var", "Parametre", choices = c("1", "2", "3"))
        ),
      mainPanel(
        textOutput("text1")
        )
      ),
    tabPanel(
      headerPanel("Tab 2"),
      sidebarPanel(
        selectInput("var", "Parametre", choices = c("21", "22", "23"))
      ),
      mainPanel(
        textOutput("text2")
      )
    )
    )
  ))

我怀疑 pageWithSidebar是造成问题的原因,但我在 google 群组中找不到替代方案。有没有办法用自己的侧边栏和主面板显示多个选项卡,或者我应该为此目的创建不同的应用程序?

最佳答案

如果我没有误解您的问题,我认为您甚至可以通过为 tabsetPanel 提供 id 来逃避 jQuery 部分(来自@f1r3br4nd 的回答)。函数,这里id = "conditionedPanels" . value然后可以通过 input 获得参数(即在主面板中选择了哪个选项卡)多变的。

一个最小的例子 :server.R除了 ShinyServer 函数框架外,它可能是空的。ui.R文件可能如下。

shinyUI(pageWithSidebar(
  headerPanel("Conditional Panels"),
  sidebarPanel(
    conditionalPanel(condition="input.conditionedPanels==1",
                     helpText("Content Panel 1")
    ),
    conditionalPanel(condition="input.conditionedPanels==2",
                     helpText("Content Panel 2")
    ) 
  ),
  mainPanel(
    tabsetPanel(
      tabPanel("Panel 1", value=1), 
      tabPanel("Panel 2", value=2)
      , id = "conditionedPanels"
    )
  )
))

关于r - 有自己的侧边栏和主面板的选项卡可以 Shiny 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16225260/

相关文章:

R:逐行比较多列字符串与单列字符串

r - 使用 dplyr 获取术语列表、分组依据和汇总值

r - 将一堆 csv 文件合并为一个带有标题的文件

r - R中二进制运算的非数字参数错误,需要说明

r - 时间序列图

r - 通过 URL 获取数据的 Shiny 应用程序在本地工作,但在 shinyapps.io 上不工作

Shiny 服务器上的 R Shiny - 如何访问该应用程序?

r - 如何更改 Shiny 的选择下拉列表的高度?

javascript - 在 googleVis 中设置工具提示格式

r shiny - 获取单选按钮值作为变量