Я только что заметил, что datatable
из библиотеки DT
не экспортирует все строки в базовом наборе данных. Экспортирует только видимые строки. В следующем воспроизводимом примере он возвращает только 25 строк, которые видимы по умолчанию.
Интересно, есть ли обходной путь, чтобы это исправить.
library(shiny)
library(DT)
## Data table output format
data_output <- function(df) {
DT::datatable(df, rownames= FALSE, options = list( dom = 'Bfrtip', buttons = c('excel','pdf','print','colvis'), pageLength = 25, initComplete = DT::JS(
"function(settings, json) {",
"$(this.api().table().header()).css({'background-color': '#369BE9', 'color': '#fff'});",
"}") ),
extensions = c('Buttons','FixedColumns'))
}
## Shiny UI
ui <- basicPage(
h2("The mtcars data"),
DT::dataTableOutput("mytable")
)
## Shiny Server
server <- function(input, output) {
output$mytable = DT::renderDataTable({
data_output(iris)
})
}
shinyApp(ui, server)