数据表不会在闪亮仪表板中呈现

Tim*_*ild 5 datatable r shiny shinydashboard dt

数据表不会在Shinydashboard中呈现.它只是为盒子呈现一条薄薄的白色条带.仅在RStudio中运行数据表函数会在RStudio查看器中呈现数据表.那么在闪亮的应用程序中呈现DT数据表的正确方法是什么?

## app.R ##
library(shiny)
library(shinydashboard)
library(htmlwidgets)
library(DT)
library(xtable)
source('../ts01/db.R')

ui <- dashboardPage(
  dashboardHeader(),
  dashboardSidebar(),
  dashboardBody(
    fluidRow(
      box(tableOutput("table1"))
    )
  )
)

server <- function(input, output) {
  output$table1 <- DT::renderDataTable({
    datatable(amount_data)
  })  
}

shinyApp(ui, server)
Run Code Online (Sandbox Code Playgroud)

Por*_*hop 6

您应该尝试以下方法:

1) tableOutput

rm(list = ls())
library(shiny)
library(shinydashboard)
my_data <- head(mtcars)

ui <- dashboardPage(
  dashboardHeader(),
  dashboardSidebar(),
  dashboardBody(
    fluidRow(
      box(tableOutput("table1"))
    )
  )
)

server <- function(input, output) {
  output$table1 <- renderTable({
    my_data
  })  
}

shinyApp(ui, server)
Run Code Online (Sandbox Code Playgroud)

2) dataTableOutput

rm(list = ls())
library(shiny)
library(DT)
library(shinydashboard)

my_data <- head(mtcars)

ui <- dashboardPage(
  dashboardHeader(),
  dashboardSidebar(),
  dashboardBody(
    fluidRow(
      box(DT::dataTableOutput("table1"))
    )
  )
)

server <- function(input, output) {
  output$table1 <- DT::renderDataTable({
    datatable(my_data)
  })  
}

shinyApp(ui, server)
Run Code Online (Sandbox Code Playgroud)

  • 如果缩小浏览器窗口,您会注意到数据表不包含在box元素中.使用数据表(my_data,extensions ='响应') (2认同)

JDH*_*JDH 6

为了确保您使用正确的包来呈现数据表,请在用户界面中使用它:

DT::dataTableOutput('table1')
Run Code Online (Sandbox Code Playgroud)