DataTable позволяет выбирать только определенные ячейки (R Shiny)

#r #shiny #datatables

#r #блестящий #таблицы данных

Вопрос:

Следующее приложение позволяет пользователю щелкнуть в таблице и выбрать ячейки. Есть ли возможность ограничить выбор определенных столбцов? Например, я хотел бы, чтобы пользователь мог щелкать только внутри вида и чашелистика.Столбцы длины.

 library(shiny)
library(DT)

ui <- fluidPage(
  DTOutput("dt"),
  verbatimTextOutput("txt")
)

server <- function(input, output, session) {
  output$dt <- renderDT({
    datatable(iris,
              selection=list(mode="single", target="cell"))
  })
  
  output$txt <- renderText({
    req(input$dt_cell_clicked)
    
    input$dt_cell_clicked$value
  })
}

shinyApp(ui, server)
  

Ответ №1:

Если вы идете с

 selection = list(mode="single", target="cell", 
                 selectable = rbind(cbind(1:nrow(iris), rep(5, nrow(iris))),
                                    cbind(1:nrow(iris), rep(1, nrow(iris))))))
  

и input$dt_cells_selected вместо этого используйте (clicked ! = selected), он работает нормально.

Матрица в selectable представляет собой двухколоночную матрицу всех ячеек (пар строк-столбцов), которые должны быть выбраны.

Комментарии:

1. Спасибо. Мне также потребовалось обновить мой пакет DT для выбора для работы.