简洁明快的仪表板 - 使用daterangeinput在日期轴上以阴谋图形改变范围

问题描述:

我在R中用线和散点图以及填充区域变量制作了Plotly图。 X轴是使用格式=“%Y-%m-%d%H:%M:%S”格式化为as.POSIXCT的日期和时间。在10分钟的时间间隔内有2个月的数据。 Y轴是单位数量。简洁明快的仪表板 - 使用daterangeinput在日期轴上以阴谋图形改变范围

我整合了图形转换为闪亮的仪表板。我想使用daterangeInput来选择X轴的日期范围。但我无法弄清楚如何将daterangeInput集成为反应式/交互式。

任何帮助,将不胜感激!

的Plotly图表,合并:

graph <- plot_ly(master, x = date, y = arrival.one, name = 'One Arrival', visible = "legendonly") %>% 
add_trace(x= date, y = arrival.two, name = 'Two Arrival', mode = 'lines', visible = "legendonly") %>% 
layout(xaxis = list(title= "Date and Time", 
     rangeslider = list (type = "date"))) 

的UI:

ui <- dashboardPage(skin="black", 
       dashboardHeader(title = "Rack Filling"), 
       dashboardSidebar(sidebarMenu(
        menuItem("Dashboard", tabName = "dashboard", icon =  icon("line-chart")), 
        menuItem("Staffing", tabName = "staffing", icon = icon("male")), 
        dateRangeInput("inDateRange", "Date range input:") 
       )), 

的服务器:

server <- function(input, output) { 
output$graph <- renderPlotly({graph    
}) 
output$event <- renderPrint({ 
?????????? 

在您的server函数,您必须创建一个反应,每次更改DateRange时都会过滤数据集。你称之为反应性绘制你的情节:

server <- function(input, output) { 
    reactiveMaster <- reactive({ 
     master %>% filter(date>=input$inDateRange[1] & date<input$inDateRange[2]) 
     }) 

    output$graph <- renderPlotly({ 
     plot_ly(reactiveMaster(), x = date, y = arrival.one, name = 'One Arrival', visible = "legendonly") %>% 
      add_trace(x= date, y = arrival.two, name = 'Two Arrival', mode = 'lines', visible = "legendonly") %>% 
      layout(xaxis = list(title= "Date and Time", 
        rangeslider = list (type = "date"))) 
     }) 
} 
+0

谢谢!这让我更加接近,但我得到一个错误,说:在eval中的警告(替代(expr),envir,enclos): “> =”我不兼容的方法(“Ops.POSIXt”,“Ops.Date”)认为这与posixt格式有关,但我试过重新格式化,并没有任何运气。 – grapher

+0

可以尝试'滤波器(as.Date(日期)> =输入$ inDateRange [1]&as.Date(日期) HubertL