Sigma.js过滤器问题

Sigma.js filter issue

本文关键字:问题 过滤器 js Sigma      更新时间:2023-09-26

我正在使用sigma.js和angular js来构建我的可视化web应用程序。

问题陈述:我编写代码的方式是,当筛选条件发生变化时,会触发筛选模块根据用户选择筛选出节点(请参阅下面的代码)。但是,最初,筛选器工作得很好,没有任何问题,但后来似乎不起作用了。看起来它根本没有执行筛选器谓词。

我尝试了以下可能的方法,但无法解决问题。

1) 已销毁并重新创建每个数据更改触发器的筛选器对象。

2) 未注册和已注册的筛选器谓词。

代码片段:

scope.$watch('filtersettingdata',function(){
s = new sigma({
             graph: scope.data['mdata'],
             container: element.elementid,
             renderer: {
              container: document.getElementById(element.elementid),
              type: 'canvas'
             },
             settings: filtersettingdata
             });
        var filter = new sigma.plugins.filter(s);
            filter.nodesBy(
                        function(n) {
                         //predicate with new filter values
                        },'filter_name').apply();
           s.refresh();
  }

任何帮助/建议都将不胜感激。

提前谢谢。

我是这个插件的作者。

它在官方西格玛存储库中已经过时了,我认为它不会像现在这样与Angular一起工作

它现在在GNU GPLv3+商业版的双重许可下发布:https://github.com/Linkurious/linkurious.js/tree/linkurious-version/plugins/sigma.plugins.filter

这个版本适用于Angular,我已经成功地在我公司的项目中使用了它。

免责声明:我在Linkurious SAS工作。