Сортировка selectizeinput в алфавитном порядке в R - PullRequest
0 голосов
/ 03 августа 2020

Я могу отсортировать первый элемент selectizeinput в алфавитном порядке с помощью функции sort (). Затем я хочу, чтобы второй элемент selectizeinput также был в алфавитном порядке. Пытался снова использовать сортировку, но это не сработало. (если вы выберете ford в качестве производителя)

Не могу найти другого решения, но я хотел бы, чтобы все будущие selectizeinputы были упорядочены в алфавитном порядке, независимо от того, что было выбрано перед ним. Я могу сделать это по-другому?

Код:

    library(shiny)
    Data2 <- data.frame(Manufacturer= c("Aston Martin Lagonda", "Honda", rep("Ford",8)),
                             Model= c("DBS","Jazz", "Fiesta", "BMAX", "Ecosport", "Focus", "Grand CMAX", "CMAX", "Kuga", "Mondeo"))
        
    ui <- fluidPage(
          useShinyjs(),
          fluidRow(
            column(width = 4,
                   wellPanel(selectizeInput("Select1_1", "Choose Manufacturer", sort(Data2$Manufacturer),
                                             options= list(placeholder = '',
                                                           onInitialize = I('function() {this.setValue(""); }'))),
                              selectizeInput("Select1_2", "Choose Model", sort(Data2$Model), 
                                                           options= list(
                                                             placeholder = '',
                                                             onInitialize = I('function() {this.setValue(""); }')))
                    )
            )
          )
        )
server <- function(input, output,session){
          observeEvent(input$Select1_1,{
            updateSelectizeInput(session,'Select1_2',
                                 choices = unique(Data2$Model[Data2$Manufacturer == input$Select1_1]))
            
          })
          observeEvent(input$Select1_2,{
            updateSelectizeInput(session,'Select1_3',
                                 choices = unique(Data2$Model_Year[Data2$Manufacturer == input$Select1_1 &
                                                                     Data2$Model == input$Select1_2 ]))
            })
        }  

shinyApp(ui = ui, server = server)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...