我正在使用sigma.js和角js一起构建我的可视化web应用程序。
问题陈述:我编写的代码是这样的:当筛选条件发生变化时,筛选模块将被触发以基于用户选择(参见下面的代码).But过滤节点,最初过滤器工作良好,没有任何问题,但后来似乎不起作用。看起来它根本没有执行过滤器谓词。
我尝试了以下可能的方法,但没能解决这个问题。
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();
}如有任何帮助/建议,我们将不胜感激。
提前谢谢。
发布于 2015-03-11 09:33:16
我是这个插件的作者。
它在正式的西格玛存储库中已经过时了,我不认为它会像现在这样有角度的工作。
它现在是在双重许可的GNU GPLv3 +商业中发布的,在这里:https://github.com/Linkurious/linkurious.js/tree/linkurious-version/plugins/sigma.plugins.filter
这个版本与Angular一起工作,我已经在我公司的项目中成功地使用了它。
免责声明:我在Linkurious工作。
https://stackoverflow.com/questions/25960957
复制相似问题