过滤vis.js中断开连接的节点

时间:2016-01-05 19:45:49

标签: vis.js

我有一个由DataSets支持的网络,包含我的节点和边缘。边缘是加权的,我想添加隐藏边缘及其相应节点的能力,它们低于某个阈值。我可以使用DataView轻松过滤边缘,但想知道如何找到不再具有与之关联的边缘的节点并隐藏它们。任何提示?

2 个答案:

答案 0 :(得分:1)

我实际上想出了一个光滑的方法来做到这一点。在我如上所述更新edgeView之后,我这样做:

    nodeView = new vis.DataView(nodes, {
        filter: function(node) {
            connEdges = edgeView.get({
                filter: function(edge) {
                    return(
                        (edge.to == node.id) || (edge.from == node.id));
                }});
            return connEdges.length > 0;
        }
    });

像魅力一样。

答案 1 :(得分:0)

一种方法是循环遍历节点,并为每个节点循环遍历所有边,以查看是否至少有一条边具有此节点的id,因为它是from或{{ 1}}属性。