2016-10-05 6 views
1

私はShinyアプリケーションを構築しており、入力ウィジェットをグループ化することができます。たとえば、ウエスト用のドロップダウンと股下用のドロップダウンを含む「パンツサイズ」のボックスと、XS /​​ S/Sのドロップダウンを備えた「Tシャツサイズ」の別のボックスが必要です。 M/L/XLとユニセックス/レディースのラジオボタン。Shinyの入力ウィジェットをグループ化する

ウィジェットのセットを自分のボックスに入れたり、すべての標準のグレーボックスを分割する方法はありますか?

ありがとうございます!

答えて

3

fluidPageレイアウトを使用したい場合、あなたの質問はレイアウトに関連しているだけです。私の考えは、パネル内のウィジェットを「グループ化」し、それらのパネルのスタイル(CSS)をカスタマイズすることです。たとえば、グリッドレイアウトやサイドバーレイアウトを使用できます。

取られた例from this post。この例では

library(shiny) 
ui <- shinyUI(fluidPage(
    tags$head(tags$style(
    HTML(' 
     #sidebar, #sidebar2 { 
      border: 1px solid black; 
     } 
     body, label, input, button, select { 
      font-family: "Arial"; 
     }') 
)), 
    titlePanel("Hello Shiny!"), 
    fluidRow(
    column(4, 
      sidebarLayout(
      sidebarPanel(width = 12, id="sidebar", 
          h5("Pants size"), 
          sliderInput("waist", 
             "waist:", 
             min = 1, 
             max = 50, 
             value = 30), 
          sliderInput("inseam", 
             "inseam:", 
             min = 1, 
             max = 50, 
             value = 30) 
      ), 
      mainPanel(width = 0) 
      ) 
      ), 
    column(8,sidebarLayout(
     sidebarPanel(width = 12, id="sidebar2", 
        h5("T-shirt size"), 
        selectInput("waist", 
           "Choose your size:", 
           choices = c("XS","S","M","L","XL")), 
        radioButtons("sex", 
           "sex:", 
           choices = c("unisex","women's")) 
    ), 
     mainPanel(width = 0) 
    )) 
) 
) 
) 
server <- shinyServer(function(input, output) { 
}) 
shinyApp(ui=ui,server=server) 

enter image description here

、重要なパネルは2つのsidebarと呼ばれるIDとsidebar2を持っています。このIDは上記のCSSセクションで使用されています。ここでは、パネルについて詳しく読む:

shinydashboards、ここではその詳細を読まれるボックスを使用する別の方法:https://rstudio.github.io/shinydashboard/structure.html#boxes

+0

感謝を!私はたくさんのボックスが必要なので、shinydashboardsに行くつもりです。 – MissMonicaE

関連する問題