数据可视化:绘制友谊关系

时间:2009-12-24 14:12:50

标签: data-visualization

我想那些曾在社区和社交网络工作的人可能会有一些经验。

我正在尝试绘制我网站上存在的所有友谊的图表,并在此过程中识别强互联用户的群集。

有没有人有这样做的经验?此外,SQL Server 2008 BI是否具有允许此类建模的工具?

由于

9 个答案:

答案 0 :(得分:5)

Programming Collective Intelligence's chapter 5致力于优化和网络可视化。 Using the modules available here and the snippet below,我可以制作以下图片:

>>> import optimization
>>> import socialnetwork
>>> sol = optimization.annealingoptimize(socialnetwork.domain, socialnetwork.crosscount, step=50, cool=0.99)
>>> socialnetwork.drawnetwork(sol)

chart

这种方法的优点是您可以轻松更改成本函数,使用不同的优化算法,或使用其他库来查看解决方案。

答案 1 :(得分:4)

Graphviz命令行工具套件中查看neato。 AS输入需要一个所谓的.dot文件。格式是直截了当的,您应该能够迭代系统中的所有友谊关系并将它们写入文件。

答案 2 :(得分:3)

要获得灵感,请查看“视觉复杂性”系列中的these social graphs

许多可视化都有解释性文章和文章,提到用于获取图像的图形工具,库和算法。

“社交网络”类别中的示例:

alt text

alt text

答案 3 :(得分:2)

您的图表可能相当大,因此GraphViz是一个糟糕的选择。它对于小图表做得很好,但对于大图表则不行。我建议您尝试使用aiSee(这里有一些example graphs)。它需要以简单的人类可读格式GDL指定图形。

Sample social network
(来源:aisee.com


Sample social network http://www.aisee.com/graph_of_the_month/pubmed5.gif


Sample social network
(来源:aisee.com

答案 4 :(得分:1)

要进行可视化,请查看Javascript Infovis Toolkit

答案 5 :(得分:1)

您可以查看Girvan-Newman算法,其输出可让您以树形图的形式了解社区结构。

答案 6 :(得分:1)

你应该看看Mark Shepherd的SpringGraph,这是一种显示大图的简洁而性感的方式。

答案 7 :(得分:1)

答案 8 :(得分:0)

查看Wikipedia -- Social Network,其中涉及社交网络分析和用户之间的图表关系。我认为基本思想是使用图形来映射所有关系,然后关系越多,关联关系越高。