plotly has a very nice example about how to making a streaming plot in R. When I was working on the arduino package, I need this feature because I want to create a plotting panel where data will be plotted once collected. So I used that example and quickly created a streaming app. Here is the core part from the example p <- plot_ly( y = c(rand(),rand(),rand()), type = 'scatter', mode = 'lines', line = list( color = '#25FEFD', width = 3 ) ) %>% layout(yaxis = list(range = c(0,10))) output$plot <- renderPlotly(p) observeEvent(input$button, { while(TRUE){ …