Javascript 使用spring force布局在网络中显示不符合筛选条件的节点,并使用cytoscape.js在鼠标上方显示文本框

Javascript 使用spring force布局在网络中显示不符合筛选条件的节点,并使用cytoscape.js在鼠标上方显示文本框,javascript,cytoscape.js,Javascript,Cytoscape.js,我是cytoscape.js新手,想知道是否可以在网络中显示不符合我的网络过滤标准的节点,即可能位于网络底部的异常值。这将非常有助于用户全面了解网络以及过滤条件是如何受到影响的。例如,如图A所示 另外,我想问一下,我在cytoscape.js中遇到了springy布局选项,但它没有在主cytoscape.js中列出。我目前正在使用arbor布局,并使用与数据值成比例的edge length参数。但是,我希望我的边长度是永久的,也就是说,如果节点或边移动,网络应恢复到原始边长度。类似这样的事情-

我是cytoscape.js新手,想知道是否可以在网络中显示不符合我的网络过滤标准的节点,即可能位于网络底部的异常值。这将非常有助于用户全面了解网络以及过滤条件是如何受到影响的。例如,如图A所示

另外,我想问一下,我在cytoscape.js中遇到了springy布局选项,但它没有在主cytoscape.js中列出。我目前正在使用arbor布局,并使用与数据值成比例的edge length参数。但是,我希望我的边长度是永久的,也就是说,如果节点或边移动,网络应恢复到原始边长度。类似这样的事情-

我的另一个疑问是关于在鼠标上方显示工具箱。是否可以显示一个包含数据详细信息的文本框,比如使用d3中的工具提示。我在很多地方看到过这个问题,但还没有找到有效的解决办法


非常感谢您在这里提供有关cytoscape.js的非常有用的答案

1由你决定。如果使用的是力导向布局,则可以修改这些图元的力,也可以通过编程方式设置位置等

2不支持Springy。与Arbor相比,它没有任何优势—Arbor速度更快,结果更好,等等。始终运行布局以保持边长度非常昂贵,尤其是对于大型图形。最好在布局完成后锁定节点,以便它们不能移动。它的性能更好,用户界面也更好。让节点不断移动会使图形更难跟踪元素并进行分析

如果你使用Arbor的选项,你可能会使布局永远运行,可能会使模拟力为零,没有最大模拟时间,等等,但我没有测试过,这也不是首选选项

3您可以使用首选工具提示解决方案,例如引导、Qtip等,指定手动定位到元素的位置。也许最终会有一个插件用于像Qtip这样的特定库。但现在,手动将其连接起来非常简单,这样您就可以使用您喜欢的任何库

注意:下次可能需要在堆栈溢出上将问题分成不同的问题页。这使得解决每个单独的问题变得更容易,而且对于正在阅读的其他人来说,可能对其他问题不感兴趣也会更好