首页 > 解决方案 > 使用 R 制作的渲染表的行滑块 - ShinyApp 的 DataTable

问题描述

我必须在 shiny-mainPanel() 上显示一个大数据框。我使用和library("DT")的目的。数据框中的行具有非常长的字符串值,这会扭曲主面板上呈现的表格的形状。renderDT({})datatable(df,rownames = FALSE)

这是所有列 的扭曲表变形表

这是列较少 的干净表有组织的表

我希望显示所有列,就像在clean-table中显示的一样。我正在尝试制作一个用于滑过行的滑块,但找不到任何内置选项datatable()

UI上的功能

mainPanel(DT::dataTableOutput("table"))

服务器上的功能

 output$table <- renderDT({datatable(df,rownames = FALSE)})

标签: rshinydt

解决方案


scrollX = TRUE您可以在 Datatable中设置选项。
Datatable javascript 库的所有选项,特别是scrollX,都可以使用参数在 Shiny 中设置。 尝试 :òptions

ui <- fluidPage(
  title = 'DataTable Options',
  tabPanel('Display length',     DT::dataTableOutput('ex1'))
)

server <- function(input, output) {
  
  # A lot of columns
  df <- cbind(head(mtcars),head(iris)) 
  output$ex1 <- DT::renderDataTable(
    DT::datatable(df, options = list(scrollX = T))
  )
}

shinyApp(server = server,ui)

推荐阅读