在C#中创建非常大的边线和顶点图

时间:2019-03-16 11:34:31

标签: c# graph quickgraph

我正在尝试绘制社交网络

例如,我有一个人A,他有5个跟随者,这些跟随者和该人将由一个顶点表示,然后具有连接它们的边。而且最有可能的是,其中至少有一半彼此跟随,从而创建了一种巨大的“网络”。

我尝试在QuickGraph中执行此操作,但是遇到了一些问题:

  1. 该图形最终看起来更像是流程图,而不是Web,这是QuickGraph前面的示例:

enter image description here

  1. 当我用真实数据进行测试时,图形变成了巨大的,松散的,意粉般的墨迹

创建这种图形的最佳方法是什么?

作为参考,我希望制作一个如下所示的图形:

enter image description here

1 个答案:

答案 0 :(得分:1)

因此,您正在使用的数据结构是有向图-也就是说,节点的边缘具有从跟随者到跟随者的方向。

您似乎正在使用dot来绘制图形,如果数据具有某种开始和结束的感觉,这是一种很好的布局方式-如果从总体上讲是早晚的话,汇的来源,从简单到复杂。

您实际上并没有那个,您的示例图片更典型地显示了无向图。做APIKEY的人也做neato,这使您的图表更接近所需的图片。

我根本不了解QuickGraph的API,但是我要么去找;

  • 更改您要创建的图形数据结构-尝试切换到UndirectedGraph之类的内容,看看是否最终切换了渲染
  • 查看您的render方法中是否存在用于渲染无向图而不是有向图的选项。