光沢のあるアプリでダウンロード ハンドラーを提供しようとしています。それは正常に動作しますが、rows_all を使用していても、すべての行ではなく、現在のフィルター処理された行のみを取得します。
このコードは問題を再現します。rows_current と rows_all が等しいのはなぜですか?
ptAgg <- data.frame(x = seq(1:100), y = seq(1:100))
ui <- fluidPage(
navbarPage('Shiny Application',
tabPanel('Overall Summary',
sidebarLayout(
sidebarPanel(
checkboxGroupInput('show_vars', 'Columns to Display:', names(ptAgg), selected = names(ptAgg)),
helpText('Select the columns you are interested in so that a subset of the data is displayed'),
downloadButton('downloadData', 'Download Data')),
mainPanel(div(dataTableOutput('overallSummary'),
style = 'font-size:80%'),
verbatimTextOutput('currRow'),
verbatimTextOutput('allRow'))
)
)))
server <- function(input, output) {
output$overallSummary <- DT::renderDataTable({
select_(ptAgg, .dots = strsplit(input$show_vars, ' ')) %>%
datatable(options = list(orderClasses = TRUE)) %>%
formatCurrency(columns = grep('y', names(ptAgg)))
})
output$currRow <- renderPrint({
cat('Current Rows: \n')
cat(input$overallSummary_rows_current)
cat('\n')
cat('All Rows: \n')
cat(input$overallSummary_rows_all)
cat('\n')
})
}
shinyApp(ui = ui, server = server)