如何在闪亮的仪表板中以特定时间间隔将新行重新绑定到数据表?

2024-01-22

我正在创建一个有 2 个输出的闪亮应用程序datatableoutput and plotoutput.我有2个变量st and et在将初始化为值的数据框中,我需要向具有以下逻辑的现有数据框添加新行
1. 新st值是之前的值et.
2. 新et值是之前的值st - 1000.
3.新的价值st and et应该在之后添加为我的数据框中的新行 每 5 秒一次。
根据新添加的行,折线图应该得到更新。

下面是我的 ui.r 和 server.r 代码,目前我能够创建新的值st and 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())
})

您可以使用以下组合reactiveVal https://shiny.rstudio.com/reference/shiny/1.0.2/reactiveVal.html and observe为了那个原因。请注意,您可以调用 a 的值reactiveVal named x with x(),您可以将其值设置为y通过做x(y)。下面给出了一个工作示例,希望对您有所帮助!



library(shiny)

ui<- shinyUI(fluidPage(

  titlePanel("Incremental Plots"),      
  sidebarLayout(
    sidebarPanel(),        
    mainPanel(
      tableOutput('var')
    )
  )
))

start_time <- 100000
end_time = start_time - 1000

server<- function(input,output,session){

  # Initialize
  reval_omega <- reactiveVal(data.frame(st = c(start_time),et = c(end_time)))
  reval_start <- reactiveVal(start_time)
  reval_end <- reactiveVal(end_time)

  # update our reactiveVal 
  observe({
    invalidateLater(1000, session) # every second
    isolate({
      reval_start(reval_end()) # set start time to current end time
      reval_end(reval_start() - 1000) # set end time to start - 1000
      omega_new <- data.frame(st = reval_start(),et = reval_end()) # create a new row for the dataframe
      reval_omega(rbind(reval_omega(),omega_new)) # rbind the reval_omega() and the new row, and store result in reval_omega()
    })
  })
  output$var <- renderTable(reval_omega())
}

shinyApp(ui,server)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在闪亮的仪表板中以特定时间间隔将新行重新绑定到数据表? 的相关文章

随机推荐

  • 为什么指定模式名称时 PostgreSQL SELECT 查询会返回不同的结果?

    我有一个 PostgreSQL 数据库表 有 4 列 标记为 column a column b 等 我想使用简单的选择查询来查询该表 select from table name 我得到一些结果 如下所示 column a column
  • GCE - 如果我使用 SSH 或从终端登录,用户名会不同吗?

    我创建了一个新项目 里面什么都没有 当我创建第一个微实例时 我执行了以下操作 使用浏览器窗口 SSH 连接到它 我懂了 用户名 instance 1 如果我使用 gcloud 命令进行连接 gcloud 计算 project project
  • C 中 Union 的示例 [关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 我正在寻找一些工会的例子 不是为了了
  • Flutter:使用导航器推送到新屏幕时保留 BottomNavigationBar

    在iOS中 我们有一个UITabBar控制器 https developer apple com documentation uikit uitabbarcontroller当我们推送到新的 ViewController 时 它会永久保留在
  • 如何使用 Google Cloud Pub/Sub 进行 Junit 测试

    我在我的系统中使用Google Cloud Pub Sub的push pub sub 我想构建我的CI测试代码 但我不知道如何去做 例如 一些代码是这样的 final Pubsub pubsub PubsubUtils getClient
  • Clang:将函数的 AST 从原始文件写入新文件

    我是 Clang 的新手 正在尝试通过 libtooling 分析 AST 我想找到一个特定的函数 并将其 AST 从原始源文件移动到新文件 我已经知道如何通过 MatchFinder 找到该函数 现在 我想知道如何将其 AST 写入新文件
  • 在 Gstreamer 上流式传输 MP4 视频文件

    我第一次使用 gstreamer 并尝试使用 Gstreamer RTP 和 UDP 将 MP4 视频文件从服务器流式传输到客户端 我尝试使用的命令行 在服务器端 gst launch 1 0 v filesrc location file
  • 确定图像中的文本和图形区域

    我不知道我是否应该在这里发布这个问题 但如果有人知道请回答一下 用于确定图像中哪个区域是文本 哪个区域是图形的算法是什么 意味着如何分离这些区域 图或图 大多数 OCR 软件 例如Ocropus http code google com p
  • iOS 7 访问企业应用程序中的 UUID 值(不适用于 AppStore)

    Apple 自 iOS7 起已弃用且无法使用该属性 uniqueIdentifier 其他属性 identifierForVendor and advertisingIdentifier有一个大问题 他们在卸载并重新安装应用程序后更改了值
  • 视图和 $this 中的 Cakephp 助手

    我正在尝试确定在视图中使用助手的最佳标准是否应该 echo form gt input or echo this gt Form gt input 在 CakePHP 手册 1 2 版中 Helper 类是通过 helper 对象直接访问的
  • Scala Nil 相当于 Set

    是否有相当于Nil for Set在斯卡拉 我尝试使用Nil作为一个值Set 但我得到了一个错误 预期是因为类型Nil is List Thanks Set empty是那个集合吗 虽然你无法直接获取它 但事实证明它只是Set伴生对象 显然
  • 一个通用 Google Analytics(分析)代码中包含多个属性

    我正在尝试在我的网站中嵌入基于新的 Universal Analytics 方法的 GA 代码 我想要实现的是将数据从一个页面发送到多个属性 因此 我检查了有关新通用 GA 代码的官方 GA 文档 特别是有关 使用多 个跟踪对象 的部分 h
  • R 根据另一列的因子水平创建新的值列[重复]

    这个问题在这里已经有答案了 我正在尝试根据另一列的值创建一个新的值列 如果 iucnStatus 列中的值为 LC 或 NT 我希望新列 受威胁 中的值为 Not Threatened 如果 iucnStatus 中的值为 VU EN CR
  • 我可以在 Subversion 中关闭自动合并吗?

    我们正在考虑从版本控制系统的签出 编辑 签入风格转向 Subversion 在评估过程中我们发现 当您在 TortoiseSVN 可能还有任何 Subversion 客户端 中执行更新操作时 如果存储库中需要应用于您正在编辑的文件的更改不会
  • 在运行时更改类类型

    我有两个课程 我们称它们为A and B 两者都继承自一个共同的超类 C 假设我需要建立一个List of Cs 我的问题是 根据收到的数据C的构造函数我需要放一个A or B列表内的对象 有没有办法从内部做到这一点C的构造函数 或者 我该
  • 如何从 Gradle 启用 Eclipselink 的静态编织

    我想为 Gradle 中的 JPA 类启用 Eclipselink 的静态编织 Eclipselink 文档解释了如何在 Ant 任务中执行此操作
  • 使用EChart.JS绘制水平目标线

    我想使用 EChart JS 绘制一条水平目标线 显示折线图 条形图和饼图上的阈值限制 https ecomfe github io echarts doc public en index html https ecomfe github
  • 构建iOS自定义通用框架,其中包括其他框架

    我正在尝试构建一个社交媒体集成框架 以便开发人员可以导入此框架 调用此框架中的 API 并在他们的应用程序中进行社交媒体操作 而不必导入和处理多个 SDK 及其代码 如下这个写得很精彩的教程 https github com jverkoe
  • 定期执行 PHP 脚本的最佳方法?

    如果我可以完全访问服务器 我可能会找到一种方法来做到这一点 但问题是它只是一个托管服务 除了FTP访问 我想定期运行 PHP 脚本来检查过时 损坏的内容 聚合新内容 删除未使用的文件等 但是该脚本可以采取长达 60 秒执行 由于内容聚合 我
  • 如何在闪亮的仪表板中以特定时间间隔将新行重新绑定到数据表?

    我正在创建一个有 2 个输出的闪亮应用程序datatableoutput and plotoutput 我有2个变量st and et在将初始化为值的数据框中 我需要向具有以下逻辑的现有数据框添加新行1 新st值是之前的值et 2 新et值