【问题标题】:Dataset output in Shinyapp in R using DT package does not show the full data使用 DT 包的 R 中 Shinyapp 中的数据集输出不显示完整数据
【发布时间】:2017-08-05 09:35:57
【问题描述】:

我想在 shinyapp 输出中显示我的完整数据。我的数据集有 31 列宽,但使用 DT::renderDataTable 我最多只能得到 17 列。我需要能够看到或至少能够左右滚动以查看我闪亮的应用程序上的整个数据表。下面是 UI 和 SERVER 代码。

我的问题:这可能吗?或者 DT 包可以在闪亮的应用程序中显示的列数有限制吗?

ui.interface <- fluidPage(title = "Pokemon Analysis", 
            tabsetPanel(
              ########### Data table below ##############
              tabPanel(title = "Pokemon Go",
                       # plotOutput("go"),
                       titlePanel("Pokemon Go"),
                       # Create a new Row in the UI for selectInputs
                       fluidRow(
                         column(4,
                                selectInput("evostage",
                                            "Evolution Stage:",
                                            c("All",
                                              unique(as.character(dt.pokemon$EvoStage))))
                         ),
                         column(4,
                                selectInput("evo",
                                            "Evolution:",
                                            c("All",
                                              unique(as.character(dt.pokemon$EvolutionPips))))
                         ),
                         column(4,
                                selectInput("battack",
                                            "Attack:",
                                            c("All",
                                              unique(as.character(dt.pokemon$BaseAttack))))
                         )
                       ),
                       # Create a new row for the table.
                       fluidRow(
                         DT::dataTableOutput("table")
                       ))
              ########### Data table above ##############
            )
)

下面是我的服务器代码...

server.interface <- function(input, output) {

########### Data table below ##############
output$table <- DT::renderDataTable(DT::datatable({
   data <- pokemon
   if (input$evostage != "All") {
     data <- data[data$EvoStage == input$evostage,]
   }
   if (input$evo != "All") {
     data <- data[data$EvolutionPips == input$evo,]
   }
   if (input$battack != "All") {
    data <- data[data$BaseAttack == input$battack,]
   }
   data
   }))
 ########### Data table above ##############
}
shinyApp(server = server.interface, ui = ui.interface)

【问题讨论】:

    标签: r shiny shinydashboard dt


    【解决方案1】:

    看来您的问题类似于this one。 如上面链接所述,可以通过将options = list(scrollX = TRUE) 参数添加到renderDataTable 函数来添加水平滚动条(在( 之后和{ 之前)。

    【讨论】:

      猜你喜欢
      • 2018-10-08
      • 2018-03-24
      • 1970-01-01
      • 2022-01-22
      • 1970-01-01
      • 2018-02-27
      • 2021-11-17
      • 2017-12-24
      • 1970-01-01
      相关资源
      最近更新 更多