使用sigma.js中的按钮调用javascript函数

问题描述

我有一个使用sigma.js(和D3)的网络图。我导入JSON数据,然后启动强制图集布局算法(顺便说一句,我不明白为什么函数需要在括号之间加上“ s”才能起作用,但似乎确实如此(例如,函数{s.startForceAtlas2 ...)。如果有人可以解释这一点,那将很有帮助)

布局算法运行10秒钟,但是如果人们的CPU速度很慢,我希望有一个按钮可以重新启动相同的功能。我尝试了多种方法(eventlisteners,html按钮...),但是我似乎无法正确地使用按钮引用此函数。有什么想法吗?

我最终想用这个例子来制作不同的按钮来调用其他sigma.js函数,因此这将非常有帮助。

<html>

<head>

  <style type="text/css">
    #container {
      max-width: 1440px;
      height: 900px;
      margin: auto;
    }
  </style>
</head>

<body>
  <!-- The button-->
  <p id="demo">Click me.</p>

  <!-- The graph -->
  <div id="container"></div>
  <script src="sigma.core.js"></script>
  <script src="sigma.parsers.json.js"></script>
  <script src="./plugins/sigma.layout.forceAtlas2/worker.js"></script>
  <script src="./plugins/sigma.layout.forceAtlas2/supervisor.js"></script>
  <script>
    sigma.parsers.json('data.json',{
      container: 'container',renderer: {
        container: document.getElementById('container'),type: 'canvas'
      },settings: {
        minNodeSize: 1,maxNodeSize: 30,defaultEdgeType: 'curve',labelThreshold: 16
      }
    },function force(s) {
        s.startForceAtlas2({ barnesHutOptimize: true,slowDown: 2 });
        window.setTimeout(function () { s.killForceAtlas2() },10000);
      }


    );
  </script>


</body>

</html>

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...