Gephi社会网络分析-网络图Force Atlas布局使用方法实验

2023-7-10 12:25| 发布者: Fuller| 查看: 4034| 评论: 0

摘要: Gephi可以生成各种直观的图来帮助研究者进行基于社会网络的分析。下图是使用Gephi官网提供的素材(小说《悲惨世界》人物关系)生成的一张网络图示例,借助网络图可以更直观和清晰的分析人物直接的关系 ... ...

前一段时间,我们发布了多篇文章,分别介绍了

  • 可视化网络分析利器Gephi的特点;
  • 如何下载安装;
  • 以及各项功能的使用(Gephi网络图的外观设置,布局,过滤等)。

Gephi可以生成各种直观的图来帮助研究者进行基于社会网络的分析。下图是使用Gephi官网提供的素材(小说《悲惨世界》人物关系)生成的一张网络图示例,借助网络图可以更直观和清晰的分析人物直接的关系:

如果有同学是初次访问这个学习园地,可以通过下面的链接查看这些已发布的文章:

1. 为什么针对网络图的布局做进一步的演练

有不少同学在阅读了这些文章后留下了他们的疑问和建议,比如有一条针对《Gephi社会网络分析-网络图的布局》的问题:文中使用的是随机生成的网络图,在使用Force Atlas布局时生成的图过于理想,实际运行时选择布局并运行后,很久都达不到效果。

因篇幅所限,先前发布的关于布局那篇文章只是对每种布局做了简单的介绍,例如,使用随机图可以进行的基本操作,没有使用实际数据进行更详细的演练。

鉴于网络图布局的重要性,我们计划针对Gephi提供的几种力引导布局做更详细的演练,今天就从Forece Atlas布局开始。

1.1 演练目标

通过设置节点大小、颜色,并利用社区检测功能将属于不同簇的词用不同颜色表示,然后,利用Force Atlas布局,将图适当地撑开。

2. 实验数据来源说明

使用实际的社交媒体(微博)数据,通过GooSeeker分词和文本分析软件生成共词矩阵,在Gephi导入共词矩阵后进行网络图的外观设置和过滤,然后针对每一种力引导布局做实操。

本篇ForceAtlas布局演练采集了胡锡进老师的微博上的微博内容,并且经文本分词软件生成了共词矩阵。数据的准备过程记录在《如何采集微博博主主页并生成共现矩阵用于Gephi社会网络分析》一文中,初次接触GooSeeker数据采集工具GooSeeker文本分析工具的同学以及想温故而知新的同学可以参考。

3. Force Atlas布局介绍

本篇是针对Force Atlas布局的演练,先介绍下Force Atlas布局和参数。

Force Atlas布局是力引导布局的一种,力引导布局算法是图布局算法中一种非常重要的算法,也是Gephi的主要布局。力引导布局有6种,即Force Atlas、Force Atlas 2、Fruchterman Reingold、OpenOrd、Yifan Hu、Yifan Hu比例。

力引导布局算法会考虑原子间引力和斥力的互相作用,计算得到节点的速度和加速度。依照类似原子或者行星的运动规律,系统最终进入一种动态平衡状态。力引导布局算法会自动迭代计算每个节点在图中的合理位置,直到迭代次数超过某个预先定义的数值,或整个网络的力趋于平衡。

稳定下来的图不仅可以充分展示网络的整体结构,丰富的网络往往也具有优美的效果。

Gephi中Force Atlas布局参数:

惯性:值愈大,图的摇摆幅度越大。

斥力强度:每个节点排斥其他节点的强度,值越大,节点的距离越大。

吸引强度:连接节点之间的吸引力的强度,值越大,有连接的节点越被拉近。

重力:值越小,图越分散;值越大,图越压缩。

速度:布局运动的速度,值越大,图的布局速度越快。

4. 在Gephi中进行Force Atlas布局实验

第2章中已经准备了共词矩阵数据表《微博博主主页数据采集结果_20230705105408100》,Gephi支持直接导入集搜客分词软件生成的共词矩阵数据。

4.1 Gephi导入共词矩阵

点击采集项:【文件】【打开】,选择要导入的共词矩阵文件

可以看到,Gephi自动识别文件里的数据是矩阵

页面上有提示日期类型,直接点击下一步,选择图的类型为“无向图”。

可以看到节点数是359, 边的数量有9725

下图就是导入后生成的初始的网络图

一开始节点的位置都是随机的,所以相同的操作看到的初始图不一定是相同的。

4.2 调整网络图外观

这部分可以参考文章《Gephi社会网络分析-网络图的外观设置

下图标注了几个外观设置相关的功能按钮:

https://www.gooseeker.com/doc/article-742-1.html

4.2.1 节点颜色设置

在外观功能区选择“节点”,“颜色”,按“度”的排名给节点不同的颜色

4.2.2 节点大小设置

根据中介中心性值来设置节点大小

第一步:在右侧的统计区,找到“平均路径长度”,点击运行

第二步:根据中介中心性设置节点大小

4.2.3 节点标签设置

4.2.4 节点分区设置

第一步:运行统计区的模块化功能

第二步:设置节点分区显示颜色

4.3 调整网络图布局-Force Atlas

第一步:在布局区选择Force Atlas, 点击运行

第二步:勾选“由尺寸调整”参数,这样避免节点相互覆盖的情况

第三步:把参数“斥力强度”的值改成10000,按一下键盘的Enter键。这个参数的值越大,节点之间越舒展。然后点击一下“运行/结束”按钮。

注意:Gephi有个bug,就是某些时候,布局在运行的时候,按钮还是显示“运行”而不是“停止”。这时候不用管具体是什么,只要图形还在抖动,点一下按钮

看看目前网络图的显示:

4.4 网络图预览

在以前的文章中,没有提到这个预览功能。Gephi在概览里基本调整好的网络图,如果要输出保存到png/pdf格式的文件中,还要在预览里做进一步的设置。

第一步:点击顶部的“预览”按钮,进入预览窗口后,点击右下部的“刷新”按钮。可以看到网络图显示出来了,但是标签没有显示出来

第二步:在左侧的节点标签设置部分里勾选“显示标签”,并且选择“中文字体”,然后点击“刷新”

第三步:左侧的功能区可以调整节点,节点标签,边,边标签,边箭头。

另外预览比例可以控制显示的节点数量,可以按自己的需要调整网络图的显示效果

预览后,也可以选择菜单项的输出,保存到图片和pdf中。不过笔者测试保存png图片正常,存到pdf中后节点标签显示不正常。不知道是软件有bug,还是有些设置没有做,这个问题留待后续研究解决。

5. 总结

今天的文章记录了怎样使用微博博文数据生成的共词矩阵,在Gephi中导入后进行节点的大小,颜色和分区等外观设置,以及Force Atlas布局和预览的实验。

后续我们会基于不同的数据,进行其它布局的实验。

社会网络分析涉及到大量的网络图算法和应用场景,比如,上面提到的社区检测,还有各种网络特征发现算法,在Gephi界面上都有对应的菜单,限于篇幅,文中未做解释,大家可以搜索互联网找到对应的讲解。


鲜花

握手

雷人

路过

鸡蛋

最新评论

GMT+8, 2024-4-27 19:27