如何在框

时间:2017-06-13 14:37:34

标签: html css r shiny shinydashboard

我有一个被动的checkboxGroupInput将用户上传的输入文件中的列名作为值。输入文件有时可能有一百多列,因此我使用this answer将选项对齐到多列。它在大多数情况下运行良好,但有时列名称非常大,因此标签不在框内:

enter image description here

知道如何克服这个问题?

我已经使用mtcars数据集准备了示例代码(仅为了示例而使用row.names代替colnames

library(shiny)
library(shinydashboard)

sidebar <- dashboardSidebar(
  sidebarMenu(
    busyIndicator(text="Loading..."),
    tags$head(
      tags$style(
        HTML('
             .multicol { 
             -webkit-column-count: 3; /* Chrome, Safari, Opera */ 
             -moz-column-count: 3;    /* Firefox */ 
             column-count: 3; 
             -moz-column-fill: auto;
             -column-fill: auto;
             }
             ')
        )
        ),  

    menuItem("Plot result", tabName = "scatterplot", icon = icon("area-chart"))
    )
)

body <- dashboardBody(
  tabItems(
    tabItem(tabName = "scatterplot", 
              box(
                title="CHECKBOX",solidHeader = TRUE, status="primary",
                tags$div(align = 'left', 
                         class = 'multicol', uiOutput("covarselect")),
                width=2
              )
            )
    )
)

ui=dashboardPage(
  dashboardHeader(title = "analysis"),
  sidebar,
  body
)

server <- function(input, output,session) {
  output$covarselect <- renderUI({
    mtcars <- datasets::mtcars
    row.names(mtcars) <- gsub(" ","",row.names(mtcars))
    checkboxGroupInput("carselect","Select any that apply",as.list(row.names(mtcars)),inline=F)
  })
}

shinyApp(ui = ui, server = server)

修改

根据Nikhil Nanjappa的建议,我尝试在fiddle中复制该问题,尽管我没有成功复制box,如shinydashboard

0 个答案:

没有答案