在Shiny应用程序中缺少值的updateSliderInput

我的数据框如下:

df <- structure(list(id = c(358L, 362L, 363L, 366L, 369L), Time_of_visit = c("DAY", 
"DAY", "DAY", "DAY", "DAY"), PropertyCode = c(7627, 7627, 7627, 
7627, 7627)), .Names = c("id", "Time_of_visit", "PropertyCode"
), row.names = c(61L, 65L, 66L, 69L, 72L), class = "data.frame")

看起来像这样:

   id Time_of_visit PropertyCode
61 358           DAY         7627
65 362           DAY         7627
66 363           DAY         7627
69 366           DAY         7627
72 369           DAY         7627

我正在创建一个动态获取id列值并允许用户滑动的sliderInput。id列的值很少是连续的。运行滑块时,我得到了滑块,但是滑块中的值以小数点增加。我如何直接将滑块从358跳到362或366跳到369。到目前为止,我的代码如下所示:

library(shiny)

ui <- fluidPage(
  sliderInput('myslider','PICTURES',min = 0, max = 1, value = 1,step = NULL, animate=animationOptions(interval = 1000,loop=F))
)

server <- function(input, output, session) {

    dff <- reactive({df})

    observe({
    updateSliderInput(session, "myslider", label = "PICTURES", value = 1,step = NULL,min = min(dff()$id), max = max(dff()$id))
    })

}

shinyApp(ui = ui, server = server)

我不确定是否应该更改最小值和最大值或步长值。有什么想法吗?

瓦尔特·贝科维奇

看看这个解决方案。它使用了Shinyjs包。请注意,在这种情况下,滑块返回从零开始的位置索引。要使用Shinyjs包中的extendShinyjs,您需要安装V8包。

用户界面

    library(shiny)
    library(shinyjs)
    jsCode <- "shinyjs.ticksNum = function(RangeOfValues){var slider = $('#sliderExample').data('ionRangeSlider'); var a = String(RangeOfValues).split(','); slider.update({
        values: a
    })}"



    shinyUI(tagList(
            useShinyjs(),
            extendShinyjs(text = jsCode),
            tags$head(
            ),
            fluidPage(


      titlePanel("Custom ticks"),


      sidebarLayout(
        sidebarPanel(
                selectInput("dataFrame", "Select data frame", choices = c("DF1", "DF2"), selected = "DF1"),
                sliderInput("sliderExample", "Slider", min = 0, max = 10, step = 1, value = 5)


        ),


        mainPanel(
                verbatimTextOutput("check"),
                verbatimTextOutput("sliderValue")
        )
      )
    )))

服务器

    library(shiny)
    library(shinyjs)


    df1 <- structure(list(id = c(358L, 362L, 363L, 366L, 369L), 
                          Time_of_visit = c("DAY", "DAY", "DAY", "DAY", "DAY"), 
                          PropertyCode = c(7627, 7627, 7627, 7627, 7627)), 
                     .Names = c("id", "Time_of_visit", "PropertyCode"), 
                     row.names = c(61L, 65L, 66L, 69L, 72L), class = "data.frame")
    df2 <- structure(list(id = c(454L, 550L, 580L, 600L, 710L), 
                          Time_of_visit = c("DAY", "DAY", "DAY", "DAY", "DAY"), 
                          PropertyCode = c(7627, 7627, 7627, 7627, 7627)), 
                     .Names = c("id", "Time_of_visit", "PropertyCode"), 
                     row.names = c(61L, 65L, 66L, 69L, 72L), class = "data.frame")



    # Define server logic required to draw a histogram
    shinyServer(function(input, output) {

            selectedDf <- reactive({
                    if (input$dataFrame == "DF1") {
                            return(df1)
                    } else {
                            return(df2)
                    }
            })

            observeEvent(selectedDf(), {

                    js$ticksNum(selectedDf()$id)

            })
            output$check <- renderPrint({
                    selectedDf() 
            }) 
            selectedId <- reactive({
                    tmp <- selectedDf()
                    tmp[input$sliderExample + 1, ]
            })
            output$sliderValue <- renderPrint({
                    selectedId()               
            })
    })

让我知道这有帮助...

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

缺少通过Plotly在Shiny应用程序中绘制的数据

updateAutonumericInput 不会更改 Shiny 应用程序中的输入值

iTunes Connect中缺少应用程序

Xubuntu中缺少应用程序菜单

通过单击“ Shiny”应用程序中的链接来打开其他“ Shiny”应用程序

R Shiny应用程序运行后如何存储值?

在虚拟应用程序(IIS)中运行应用程序时缺少程序集引用

缺少启动应用程序

混合应用程序中的输入缺少焦点光标

Django 在“身份验证”应用程序中缺少迁移

在Yii 2应用程序中缺少Bootstrap 3标注

AzureAD的访问令牌中缺少应用程序角色

缺少Android Studio中调试信息的Android应用程序

iTunes Connect中的“缺少应用程序内购买”部分

Chrome中的Android应用程序打开URL缺少QueryString

.Net Core应用程序中缺少NativeCallableAttribute

我的vue应用程序中缺少令牌

Django应用程序形式中缺少参数

Spring Boot应用程序的Intellij IDEA中缺少映射

菜单栏中缺少应用程序的菜单

Eclipse中的Android应用程序项目缺少文件

localTodos应用程序的回调函数中缺少参数

Spring Boot 日志中缺少应用程序名称

hasGroups 中的错误:缺少参数“数据集”,在带有模块的应用程序中没有默认值

Google Drive 管理应用程序中缺少应用程序图标

如何调试服务应用程序并检查应用程序中缺少哪个依赖项

在 Bitbucket 管道中停止 Shiny 应用程序

在Shiny应用程序中运行github命令

在R Shiny应用程序中返回HTTP状态代码