我需要可视化一个相对较大的图(6K节点,8K边),它具有以下属性:
设全局边缘重叠=通过直接可视化簇的图{A,B,C,D,E},边= {五角星而引起的边重叠,这是非平面的,如果你直接画出它,必然会产生边缘重叠。
设局部边缘重叠=上述,但{ A,B,C,D,E}只是节点。
我需要以满足以下要求的方式可视化上面的图形
有人想过如何用上面的要求最好地可视化一个图形吗?
我想出了一个解决全局边缘重叠问题的解决方案,就是确保集群A在可视化过程中只能有1条直接边缘到另一个集群(B)。.C=‘C 1’>簇间的任何附加边,A -> C,A -> D,.-> A_C,C -> C_A,A -> A_D,D -> D_A.都是创造出来的。
有人有想法吗?
发布于 2010-03-02 02:22:29
Prefuse有一些良好的图形绘制链接文本算法,它似乎处理相当大的图形相对较好。您可以尝试流图布局,它构建在Prefuse之上。
发布于 2010-03-05 22:01:13
考虑到您的目标,我认为Fruchterman Reingold算法在防止边缘重叠方面做得相当不错。例如,请参阅这个由多个组件组成的网络的屏幕截图,该组件使用Fruchterman算法绘制。IGraph已经内置了对这个算法的支持(我相信Networkx也一样),而且非常快。
发布于 2010-06-14 23:01:13
有一个程序构建在Prefuse之上,名为SocialAction。您必须向作者请求代码,但是它为您做了很多关于图表的统计分析,例如识别子图。我已经在一个有超过18,000个节点的图表上使用了它,尽管在这个规模上它非常慢,但它仍然工作。
https://stackoverflow.com/questions/2356960
复制相似问题