2013-03-11 12 views
8

Buduję aplikację internetową R/błyszczącą. Chcę mieć pole wyboru wielokrotnego (używam checkboxGroupInput(), ale jestem otwarty na alternatywy). Jednak lista wyborów jest długa i chcę ją zawrzeć w stosunkowo małym polu opcji (wyświetlającym po 5-6 opcji naraz) z paskiem przewijania, który umożliwia przewijanie całej listy wyborów.Zestaw wielokrotnego wyboru w R/lśniący - dodawanie paska przewijania

Czy można to zrobić? minimalny przykład:

ui.R

library(shiny) 
choices = paste("A",1:30,sep="_") 

shinyUI(pageWithSidebar(

# Application title 
headerPanel("my title"), 
sidebarPanel( 
    checkboxGroupInput("inp", "choose any of the following", choices) 
), 
mainPanel(
    tableOutput("result") 

) 
)) 

server.R

library(shiny) 
shinyServer(function(input, output) { 
myInput <- reactive({ 
    input$inp 
}) 
output$result <- renderTable({ 
x = myInput() 
if(length(x)==0) { 
x = "No Choice Made" 
} 
matrix(x,ncol=1) 
}) 

}) 

Odpowiedz

10

Okazało się, że za pomocą selectInput(..., multiple = TRUE) załatwia sprawę.

Powiązane problemy