R闪亮的滑动输入范围受限制
问题描述:
在我的R闪亮sliderInput我想限制给定的滑块的输入范围具有较大的最大值。 例如,假设输入必须在间隔[1:10]内。R闪亮的滑动输入范围受限制
当然,我现在可以在sliderInput选项中定义min = 1,max = 10,但是我只会得到一个带有此间隔值的滑块。
我的目标是在[1:50]中看到一个带有值(例如)的滑块,但用户只能在间隔[1:10]中移动此滑块。这会让我的应用程序更好。 这可能吗?
答
从以前的问题,构建可以使用最小值,这里滑块1被限制为80 max和滑块2仅限于50
rm(list = ls())
library(shiny)
slider1limit <- 80
slider2limit <- 50
ui <-pageWithSidebar(
# Application title
headerPanel("Sliders should sum to 100!"),
# Sidebar with sliders whos sum should be constrained to be 100
sidebarPanel(
sliderInput("slider1", "Slider 1: ", min = 0, max = 100, value = 0, step=1),
uiOutput("slider")),
# Create table output
mainPanel(tableOutput("restable"))
)
server <- function(input, output,session) {
observeEvent(input$slider2,{
values <- min((100 - input$slider2),slider1limit)
updateSliderInput(session, "slider1", min =0,max=100, value = values)
})
output$slider <- renderUI({
values <- min((100 - input$slider1),slider2limit)
sliderInput("slider2", "Slider 2: ", min=0,max=100, value = values)
})
output$restable <- renderTable({
myvals<- c(input$slider1, input$slider2, 100-input$slider1-input$slider2)
data.frame(Names=c("Slider 1", "Slider 2", "Slider 3"),Values=myvals)
})
}
runApp(list(ui = ui, server = server))
再次感谢您。现在我已经拥有了我需要的所有功能,可以根据需要进行构建你今天帮了我很多 –