Я создаю блестящее приложение с 2 выходами datatableoutput
и plotoutput
. У меня есть 2 переменные st
и et
во фрейме данных, которые будут инициализированы значением, мне нужно добавить новые строки всуществующий фрейм данных, имеющий следующую логику
1. Новое значение st
является предыдущим значением et
.
2. Новое значение et
является предыдущим значением st - 1000
.
3.Новые значения st
и et
должны добавляться как новая строка в моем фрейме данных каждые 5 секунд.
На основе вновь добавленных строк линейный график должен обновляться.
Ниже приведены мои коды ui.r и server.r, в настоящее время я могу создавать новые значения st
и et
в соответствии с логикой, но не смог добавить новые строки и построить график
Ui.r
library(shiny)
shinyUI(fluidPage(
titlePanel("Incremental Plots"),
sidebarLayout(
sidebarPanel(),
mainPanel(
tableOutput('var')
)
)
))
Server.r
library(shiny)
start_time <- 100000
end_time <- start_time - 1000
shinyServer(function(input,output,session){
omega <- reactive({
invalidateLater(1000, session)
#dataf <<- data.frame(st = c(start_time),et = c(end_time))
return(dataf)
})
# update non reactive value
observe({
omega()
start_time <<- end_time
end_time <<- start_time - 1000
dataf <<- data.frame(st = start_time,et = end_time)
})
output$var <- renderTable(omega())
})