我正在尝试使用dateformat更新sliderinput,但更新后的版本与我传入的实际日期不同。
shinyUI(sidebarLayout(
sidebarPanel(
sliderInput("date_range",
"Choose Date Range:",
min = as.POSIXct("2016-02-01 01:00"),
max = as.POSIXct("2016-03-01 23:00"),
value = c(as.POSIXct("2016-02-01 02:00")),
timeFormat = "%a %H:%M", ticks = F, animate = T
))))
shinyServer(function(session,input, output) {
observe(
#min und max date vom tweet map frame auslesen
Sys.setlocale("LC_TIME", "English")
time <- as.data.frame(as.POSIXct(df_map$created_at, format="%a %b %d %H:%M:%S +0000 %Y", tz="GMT"))
names(time)[1]<-"time"
time %>% arrange(desc(time)) %>% filter(row_number()==1 | row_number()==n()) -> min_max_time
updateSliderInput(session,"date_range",min = (min_max_time[2,]),
max = (min_max_time[1,]), value=min_max_time[2,])
}
))}
df_map$created_at
的格式为Mon Jun 06 21:37:23 +0000 2016
在man示例中,min_max_time
是
time
1 2016-06-07 23:27:11
2 2016-06-06 21:37:23
但更新的Sliderinput
始于23:37:23
而不是21:37:23
shinyslider是否使用不同的时区?
答案 0 :(得分:1)
已经找到解决方案:Shiny使用UTC。
但您可以在UI Sliderinput中传递timezone = "GMT"
。