我正在尝试使用这样的时间戳 factor 格式来为我的数据制作闪亮的应用程序:“ 2017-03-07 06:00:00”,“ 2017-03-07 06:00” :00“。 它们是小时数据,但是整个数据中可能缺少某些日期或时间。我希望能够在两个任意日期时间之间选择数据。这是我到目前为止所做的:
sliderInput(inputId = "slider_datetime",
label = "Date & time:",
min = as.POSIXct("2017-03-03 16:00:00", "UTC"), max = as.POSIXct("2017-12-01 07:00:00", "UTC"),
value= as.POSIXct("2017-03-03 16:00:00", "UTC")),
#Create the scatterplot object the plotOutput function is expecting
output$scatterplot <- renderPlot({
Data<- Data%>%
mutate(Timestamp = as.POSIXct(Timestamp))%>%
filter(Timestamp %in% input$slider_datetime)
ggplot(data[data$ID %in% input$z,], aes_string(x=input$x, y=input$y))+geom_point()
})
但是,sliderInput不是在两个时间戳之间进行选择的正确选择,而且应用运行速度如此之慢。我不知道有没有类似datetimeRangeInput的东西? 如果有人可以帮助我,我会很感激
Pegah
答案 0 :(得分:0)
如果您尝试在2个不同的日期时间之间进行选择,则不应将您的liderInput修改为如下所示
sliderInput(inputId = "slider_datetime",
label = "Date & time:",
min = as.POSIXct("2017-03-03 16:00:00", "UTC"), max =
as.POSIXct("2017-12-01 07:00:00", "UTC"),
value= c(as.POSIXct("2017-03-03 16:00:00", "UTC"),
as.POSIXct("2017-03-10 16:00:00", "UTC"))
)
此外,每次更改输入时,调用as.POSIXct
来转换Timestamp列时,应用程序运行时间可能会很慢。我不确定这是否是原因,但是如果可行,您可以尝试以下方法! :)
Data <- Data %>% mutate(Timestamp = as.POSIXct(Timestamp))
sliderInput(inputId = "slider_datetime",
label = "Date & time:",
min = min(Data$Timestamp), max = max(Data$Timestamp),
value= c("2017-03-03 16:00:00","2017-03-10 16:00:00")
)
其他选项之一可能是分别使用dateInput和slideInput作为日期和时间,然后将2个结果串联起来以过滤数据。
我希望这会有所帮助!