我正在使用 vis.js 进行网络可视化。我的想法是开发一个像 Google Maps Zoom 这样的解决方案,因为它在不缩放时将边缘和节点聚集在一起。
除了在相同的两个节点之间聚类多个边缘之外,我还想对节点进行聚类。像集群节点一样,当集群边缘被放大或单击时,我想显示所有不同的边缘以及更多信息。
我还没有在 vis.js 文档中找到有关聚类、问题和疑问的答案。这个功能可用吗?
据我了解,术语“集群”仅适用于 vis.js 词汇表中的节点。但是,您可以做的是隐藏边缘。
您必须设置一个点击处理程序,您可以在 其中抓取选定的边,获取其和节点(不过,如果有多个选定的边,您必须决定要做什么),找到连接它们的边并隐藏除一条之外的所有边。from
to
network.on('click',function(eventParams){
var edges = eventParams.edges;
if(edges.length == 0)
return;
var edge = edges[0],
fromID = edge.from,
toID = edge.to;
// get the nodes by ids, find all edges connecting them, hide all but the selected one
});
要将其进一步推进到切换,您必须检查是否有任何连接边被隐藏,如果至少有一个被隐藏,则显示全部,否则隐藏除一个之外的所有。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句