/ / Cómo seleccionar solo celdas relacionadas con una columna específica de un marco de datos en shiny - r, shiny, shinyapps

Cómo seleccionar solo celdas relacionadas con una columna específica de un marco de datos en shiny - r, shiny, shinyapps

Estoy construyendo un panel interactivo con brillos. Quiero seleccionar solo una celda específica en un momento en particular relacionado solo con la primera columna.

Cuando pasé por https://rstudio.github.io/DT/shiny.html No pude encontrar la información requerida. ¿¿Hay alguna forma de hacer esto??

Respuestas

0 para la respuesta № 1

Esta es una aplicación brillante que muestra cómo hacerlo:

ui.R

library(shiny)
library(shinydashboard)

library(DT)
header <- dashboardHeader()
sidebar <- dashboardSidebar(
selectInput("rowNumber", "Select row number", choices = 1:NROW(mtcars)),
selectInput("colNumber", "Select column number", choices = 1:NCOL(mtcars))
)
body <- dashboardBody(
DT::dataTableOutput("mtcarsTable")
)

shinyUI(fluidPage(

# Application title
titlePanel("Data Table"),
dashboardPage(header, sidebar, body)


))

servidor.R

    library(shiny)
library(shinydashboard)


# Define server logic required to draw a histogram
shinyServer(function(input, output) {
output$mtcarsTable <- renderDataTable({
a <- 200
DT::datatable(datasets::mtcars,
selection = list(target = "cell",
selected = matrix(c(as.numeric(input$rowNumber),
as.numeric(input$colNumber)),
nrow = 1))
)
})

})

La desventaja de esta solución es que si elEl usuario hace clic en la celda seleccionada y la selección se elimina. Una posible alternativa sería cambiar el color de fondo de la celda, pero esto requiere una pieza de javascript en la devolución de llamada. Déjame saber si estás interesado en ver la solución alternativa.