前一段时间,我们发布了多篇文章,分别介绍了
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界面上都有对应的菜单,限于篇幅,文中未做解释,大家可以搜索互联网找到对应的讲解。 |