繁体   English   中英

R Shiny:如何在过滤器中按升序显示值

[英]R Shiny: How to Displayed values in filter with ascending Order

如何以升序显示过滤器中的值。

想要在 dataTableOutput 中以升序显示星期的过滤器。

这是ui.R的代码

fluidPage(
  titlePanel("Delivery Assurance Matrix"),
  fluidRow(
    column(4,

           selectInput("week_count",
                       "Week",
                       c("All",
                         sort(unique(as.character(data$Week))))
    ))),
 DT::dataTableOutput("table")
)

这是server.R的代码

function(input, output) {
output$table <- DT::renderDataTable(DT::datatable({
    data<-data
    if (input$week_count != "All") {
      data <- data[data$Week >= input$week_count,]
    }

    data
}))

}  

但在 UI Values 中不按顺序在此处输入图像描述

在此处输入图像描述

您也可以使用shinyWidgets package ,它具有Select All选项

library(shiny)
library(shinyWidgets)

data <- c(11,1,2,3,10,21)
ui <- fluidPage(
    titlePanel("Delivery Assurance Matrix"),
    fluidRow(
        column(4,
               pickerInput(
                   inputId = "week_count",
                   label = "Week",
                   choices = sort(data),
                   multiple = TRUE,
                   options = list(
                       `actions-box` = TRUE,
                       `deselect-all-text` = "None...",
                       `select-all-text` = "Select All",
                       `none-selected-text` = "None Selected"
                   )
               )

               )),
    DT::dataTableOutput("table")
)


server <- function(input, output) {}  

shinyApp(ui = ui, server = server)

在此处输入图像描述

它通过这种变化解决了。

fluidRow(
    column(4,

           selectInput("week_count",
                       "Week",
                       c("All",
                         order(sort(unique(as.character(data$Week)))))
    ))

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM