2016-05-17 61 views
4

我正在使用闪亮来做un R web应用程序,应用程序由主面板(带有2个tabspanel)左侧的sidebarpanel和下面的另一个sidebarpanel组成。 我想保留第一个主面板的底部侧面板,但第二个面板取下。 代码如下:删除特定tabPanel的侧栏面板

sidebarPanel(

    wellPanel(

     fileInput('file1', 'Choisissez les data service ?', 
       accept = c('text/csv', 'text/comma-separated-values', 
       'text/tab-separated-values', 'text/plain', 
       '.csv', '.tsv', 'RData' 
       ) 
    ) 


    ), 


    wellPanel(

     selectInput(inputId = "fonction.de", 
        label = "En fonction de ?", 
        choices = fonctions.de, 
        selected = "perimetre_commercial_estime" 
    ), 


     selectInput(inputId = "perimetre", 
        label = "Perimetres commercial", 
        choices = perimetres, 
        selected = "2-HDM MARCHAND", 
        multiple = TRUE 
    ), 

     checkboxInput(inputId = "case1", label = "Tous perimetres", value = FALSE), 


     selectInput(inputId = "ae", 
        label = "AE", 
        choices = aes, 
        selected = "AE Paris", 
        multiple = TRUE 
    ), 

     checkboxInput(inputId = "case2", label = "Tous AE", value = FALSE), 


     selectInput(inputId = "segment", 
        label = "Segment commercial", 
        choices = segments, 
        selected = "Premium", 
        multiple = TRUE 
    ), 

     checkboxInput(inputId = "case3", label = "Tous segments", value = FALSE) 





    ) 
), 

    mainPanel(

    tabsetPanel(type = "tabs", 
       tabPanel("Graphiques", 
         plotlyOutput("my.chart")), 
       tabPanel("Tables", 
         dataTableOutput("my.table"), 
         htmlOutput("my.text1")) 

    ) 
), 

    sidebarPanel(

    selectInput(inputId = "abscisse", 
       label = "Abscisse", 
       choices = abscisses, 
       selected = "", 
       multiple = FALSE 
    ), 


    selectInput(inputId = "ordonnee", 
       label = "Ordonnee", 
       choices = ordonnees, 
       selected = "", 
       multiple = FALSE 
    ) 

), 


    sidebarPanel(
    img(src="Dymetryyy.jpg", height = 150, width = 350) 
) 


) 
) 
+0

Conditionalpanel可以完成我认为的工作吗? –

回答

3

对于谁是面临同样的问题的人,你必须使用conditionalPanel来解决它。

mainPanel(

    tabsetPanel(id = "bab", 
       type = "tabs", 
       tabPanel(value = "graphiques", 
         "Graphiques", 
         plotlyOutput("my.chart")), 
       tabPanel(value = "tables", 
         "Tables", 
         dataTableOutput("my.table"), 
         htmlOutput("my.text1")) 

    ) 
), 

    conditionalPanel(condition = "input.bab == 'graphiques'", 
    sidebarPanel(

     selectInput(inputId = "abscisse", 
        label = "Abscisse", 
        choices = abscisses, 
        selected = "", 
        multiple = FALSE 
    ), 


     selectInput(inputId = "ordonnee", 
        label = "Ordonnee", 
        choices = ordonnees, 
        selected = "", 
        multiple = FALSE 
    ) 

    ), 


    sidebarPanel(
     img(src="dymetryyy", height = 150, width = 350) 
    ) 

)