11
votes

I was wondering if its possible to display the check box option side by side on the UI. Some sample code that I've tried:

shinyUI(pageWithSidebar(
  headerPanel("Example"),
  sidebarPanel(   
    checkboxInput(inputId = "simOption", label = "Historical Data",value=TRUE),
    checkboxInput(inputId = "simOption2", label = "Historical Data 2",value=TRUE)


  ),

  mainPanel(
tabsetPanel(

  tabPanel("Heatmap",
           plotOutput("temp")
  ),
  tabPanel("About"),

  id="tabs"
)#tabsetPanel  

  )#mainPane;

))
2

2 Answers

13
votes

Try fudging some bootstrap syntax:

shinyUI(pageWithSidebar(
  headerPanel("Example"),
  sidebarPanel(   

    withTags(div(class='row-fluid',
                 div(class='span3', checkboxInput(inputId = "simOption", label = "Historical Data",value=TRUE)),
                 div(class='span5', checkboxInput(inputId = "simOption2", label = "Historical Data 2",value=TRUE))
    ))



  ),

  mainPanel(
tabsetPanel(

  tabPanel("Heatmap",
           plotOutput("temp")
  ),
  tabPanel("About"),

  id="tabs"
)#tabsetPanel  

  )#mainPane;

))

https://medium.com/what-i-learned-building/99fdd6e46586

EDIT for horizontal radio button

from ?radiobutton

radioButtons("dist", "Distribution type:",
             c("Normal" = "norm",
               "Uniform" = "unif",
               "Log-normal" = "lnorm",
               "Exponential" = "exp"))

replace with a

 gsub("label class=\"radio\"", "label class=\"radio inline\"",radioButtons("dist", "Distribution type:",
             c("Normal" = "norm",
               "Uniform" = "unif",
               "Log-normal" = "lnorm",
               "Exponential" = "exp")))
  )
13
votes

You can use checkboxGroupInput with inline = TRUE param:

checkboxGroupInput(inputId = "simOption", label = "",
                   choices = c("Historical Data" = TRUE,
                               "Historical Data 2" = TRUE),
                   inline = TRUE)