2016-04-01 10 views
1

Sepecific bir sekmede bir selecInput paneline sahip olmaya çalışıyorum ve bunu nasıl yapacağından emin değilim. TabPanel() işlevinin içinde, sidebarPanel() işlevini plotOutput() işlevinin hemen arkasına dahil etmeyi denedim, ancak sidebarPanel artık yanda değil, solda ve histogram çizimiyle çakışıyor. Bu belirli sekmede yan paneli düzgün şekilde yerleştirmenin veya grafiğin sağ tarafındaki o yan paneli yerleştirmenin bir yolu var mıydı?Parlak: Nasıl bir sidebarPanel iç tabPanel gömmek için?

mainPanel(
    tabsetPanel(
     tabPanel("Histogram",plotOutput("histogram")), 
     tabPanel("Scatter",plotOutput("scatter"), 
       sidebarPanel(
    selectInput("xaxis", label = "x axis", 
       choices = detectors, selected = detectors[1],width='200px',selectize=FALSE), 
    selectInput("yaxis", label = "y axis", 
       choices = detectors, selected = detectors[2],width='200px',selectize=FALSE), 
    selectInput("population1", label = "Population 1", 
       choices = files, selected = files[1],width='200px',selectize=FALSE), 
    selectInput("population2", label = "Population 2", 
       choices = files, selected = files[1],width='200px',selectize=FALSE), 
    selectInput("population3", label = "Population 3", 
       choices = files, selected = files[1],width='200px',selectize=FALSE) 
) 
), 
     tabPanel("Table", DT::dataTableOutput("table")) 
    ) 
) 
+0

Çıktının yalnızca kısmi kodla anlaşılması gerçekten zor. Hem sunucu hem de kullanıcı arabirimi yerine en az bir tekrarlanabilir örnek sağlarsanız daha iyi olur. – Molx

+0

Görünüşe göre, sideBarLayout() her yerde aradınız ... –

+0

sideBarLayout() benim aradığım şeydi. Basit, teşekkürler! –

cevap

2

Konseptinizin haklı, ama kodun yerleştirme yanlıştır: aşağıda kullandığım kod, teşekkür ederiz. Kendinden açıklayıcı olan aşağıdaki koddan geçin.

library(shiny) 
ui <- fluidPage(


    titlePanel("Old Faithful Geyser Data"), 

    tabsetPanel(    
      tabPanel("Tab 1", h1("First tab")), 
      tabPanel("Tab2", 
      sidebarLayout(
       sidebarPanel(width = 3, sliderInput("bins", 
                "Number of bins:", 
                min = 1, 
                max = 50, 
                value = 30) 
       ), 

       mainPanel(
       plotOutput("distPlot") 
      ) 
      ) 
     ) 
    ) 
) 
server <- function(input, output) { 

    output$distPlot <- renderPlot({ 
     x <- faithful[, 2] 
     bins <- seq(min(x), max(x), length.out = input$bins + 1) 

     hist(x, breaks = bins, col = 'darkgray', border = 'white') 
    }) 
} 
shinyApp(ui = ui, server = server)*