R 串扰:如何在 filter_slider() 中设置默认值以过滤日期列

问题描述 投票:0回答:1

我的问题类似于这个问题,询问如何在

crosstalk::filter_select
中设置默认过滤器选择。但是,我需要对日期列的
R
进行默认选择。我创建了一个可重现的示例,其中包含虚拟数据、过滤器和
分类过滤器
的工作默认选择。我希望能够对 date slider 做类似的事情。我应该如何更改我的 JavaScript,以便选择明天和后天之间的日期范围? crosstalk::filter_slider


r htmlwidgets crosstalk
1个回答
0
投票

library(crosstalk) library(htmltools) # dummy data dat <- data.frame( date = Sys.Date() + 0:4, letter = letters[1:5], number = 0:4 + 1 ) # shared data dat_shared <- crosstalk::SharedData$new(dat) # custom js (contains unfinised code for date filter!) custom_js <- shiny::tags$script(' // this is not complete and it does not work function filter_date(){ document.getElementById("date") } $(document).ready(filter_date); // this is an example how a default selection can be done using JS which works // it selects a for the filter (the default is that nothing is selected) // I want to do something similar, but for a date filter function filter_cat(){ document.getElementById("filter_cat").getElementsByClassName("selectized")[0].selectize.setValue("a",false) } $(document).ready(filter_cat); ' ) # filters for the widget filter_cat <- crosstalk::filter_select( "filter_cat", "Select a letter", dat_shared, ~letter, multiple = F ) filter_date <- crosstalk::filter_slider( "filter_date", "Date", dat_shared, ~date ) # showing the widget in RStudio htmltools::browsable(htmltools::tagList( custom_js, filter_date, filter_cat ))

© www.soinside.com 2019 - 2024. All rights reserved.