You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Shiny应用的visNetwork图中模拟特定节点点击?

Shiny测试中模拟visNetwork模块节点点击的实现

在Shiny模块化应用里,若要对process_genealogy模块下的visNetwork图模拟特定节点点击,可通过app$executeScript()执行JavaScript代码实现。

关键信息

  • visNetwork的Shiny输出定义:output$network_output <- renderVisNetwork({...})
  • 模块对应的实例ID:process_genealogy-network_output(可通过控制台执行HTMLWidgets.find('#process_genealogy-network_output')验证获取实例)

实现代码

app$executeScript(
  "
  // 获取模块中的visNetwork实例
  var network = HTMLWidgets.find('#process_genealogy-network_output');

  // 模拟节点点击:先设置选中状态,再触发click事件
  network.setSelection({nodes: ['3027356-24']});
  network.emit('click', {
      nodes: ['3027356-24'],
      edges: []
  });
  "
)

代码说明

  • HTMLWidgets.find():通过模块生成的DOM ID定位到visNetwork的实例对象
  • network.setSelection():设置目标节点为选中状态,还原点击后的视觉反馈
  • network.emit('click'):手动触发click事件,传递选中节点的信息,确保Shiny端能捕获到点击事件的响应逻辑

内容的提问来源于stack exchange,提问作者Silvia Leccabue

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.19 04:03:18