我有一个133x4矩阵,间隔时间为5分钟,因为它的行名存储在一个字符向量中,“10:30”,“10:35”,... 我试图制作一个Shiny滑块,以便用户选择任何时间戳b / w开始和结束时间并获得与该时间戳相对应的条形图作为回报。我可以使用编号为b / w 1和133的滑块轴标签执行此操作,此代码位于:https://pastebin.com/GSKsYJVp 但是,我无法使用5分钟间隔时间戳来完成滑块。我环顾四周,试图从这里重新设计解决方案:Shiny Slider Input step by month,但收到错误消息:必须提供'origin'。到目前为止,这是我的(错误的)代码:
library(shiny)
ui <- fluidPage(
titlePanel("Running Counts!"),
sidebarLayout(
sidebarPanel(
sliderInput(inputId = "bins",
label = "Select time:",
min = as.Date("2017-12-18 10:30", tz = "Asia/Kolkata"),
max = as.Date("2017-12-18 21:30", tz = "Asia/Kolkata"),
value = min,
timeFormat = "%H:%M",
step = 300)#i.e. 5 mins
),
mainPanel(
plotOutput(outputId = "distPlot")
)
)
)
server <- function(input, output) {
output$distPlot <- renderPlot({
full.date <- as.POSIXct(input$bins, tz="Asia/Kolkata")
output <- strftime(full.date, format = "%H:%M")
x <- barplot(results_mat[output,])
#main = paste(c("Results at ", rownames(results_mat)[input$bins])))
})
}
shinyApp(ui = ui, server = server)
我发布了一个链接到我的工作,但不优雅的代码,以包含这篇文章的长度。如果这个论坛需要实际的代码我也可以发布。谢谢
答案 0 :(得分:0)
我想我最终设法回答了我自己的查询:读取滑块inputID,min,max和value as.POSIXct()变量以及server()strftime(输入$ bins,“%R”)返回一个描述时间的字符变量:符合结果矩阵标签的分钟