#r #shiny
#r #блестящий
Вопрос:
У меня большой и сложный код.
Я создал uiOutput («ползунки») в пользовательском интерфейсе, чтобы иметь несколько ползунков (в зависимости от количества столбцов набора данных, которые я могу загрузить). На сервере у меня есть следующий код:
output$sliders <- renderUI({
pvars <- file_col()/2-1
myList<-list()
lapply(seq(pvars), function(i) {
sliderInput(inputId = paste0("Shiftindex", i),label = ("Shift index")
,min = 0, max = 1,value= 0,step = 0.1)
}
)
})
Я хочу снова использовать значение каждого sliderInput на сервере, чтобы вычислить что-то еще.
Мой вопрос в том, как я могу поместить имена в ползунки, чтобы иметь возможность снова использовать их значения на сервере, и как я должен их вызывать??
Комментарии:
1. Вы можете получить доступ к их значениям на стороне сервера
input[[paste0("Shiftindex", 1)]]
, например. Вы могли бы сделать что-то вроде следующего:r output$text <- renderText({ pvars <- file_col()/2-1 slider_inputs <- paste0("Shiftindex", seq(pvars)) values <- purrr::map_dbl(slider_inputs, function(x) input[[x]]) paste(values, collapse = ", ") })
просто дайте мне знать, если вам нужна дополнительная помощь 🙂2. @TomasCapretto, пожалуйста, оставьте свой комментарий в качестве ответа, поскольку это может помочь другим, ищущим аналогичное решение.
Ответ №1:
Вы можете получить доступ к их значениям на стороне сервера input[[paste0("Shiftindex", 1)]]
, например.
Вы могли бы сделать что-то вроде следующего:
output$text <- renderText({
pvars <- file_col()/2-1
slider_inputs <- paste0("Shiftindex", seq(pvars))
values <- purrr::map_dbl(slider_inputs, function(x) input[[x]])
paste(values, collapse = ", ")
})
Просто дайте мне знать, если вам нужна дополнительная помощь 🙂
Комментарии:
1. Большое вам спасибо. Моя проблема также в том, что я хочу использовать значения каждого ползунка на сервере. data1 <- reactive({for (i in 1:(ncol(data())/2-1)){ d $t[[i]] <-d $ t[[i]] output.text (здесь я хочу, чтобы значение выбиралось из каждого ползунка) return(d)}. Есть идеи??
2. Я только что показал, как использовать их в тексте, но вы можете использовать их в вычислениях или во всем, что захотите. Не могли бы вы дать мне больше информации о том, что вы пытаетесь сделать?
3. Я думаю, что я не очень хорошо объяснил себя. У меня есть uiOutput с renderUI на сервере.
4. Этот renderUI создает много ползунков (в зависимости от столбцов загруженного файла). Итак, я хочу взять эти значения и вычислить новое число (новое число — это предыдущее плюс значение ползунка).