利用Gephi生成可视化拓扑图

时间:2021-01-02 01:32:31

突然发现好久没更文章了,先写一篇记录一下近期的工作吧。

近期有很多工作都要在图上进行优化,虽然可以写代码做统计,但是缺少一种比较直观的可视化工具。

通过搜索找到了这三个工具:Graphviz,Gephi和Pajek。比较了一下,觉得Gephi操作最简单,所以就用它啦。


一、安装:

网上很好下载到。打开后界面有“概览”、“数据资料”和“预览”三栏。主要的绘图工作在“概览”中完成,“数据资料”以表格形式存储了点和边的情况,“预览”是为导出图做准备。


二、导入:

Gephi可以很方便的导入csv格式的文件,而excel就能很方便的编辑csv,也可以将xls转存为csv,所以不需要为了导入使用很复杂的结构。导入图的主要步骤是:

1、文件->新建项目,生成一个空项目;

2、从csv文件中导入图信息,其中点和边应该分为两个文件,分别导入。

导入点时,csv文件结构是这样的:

利用Gephi生成可视化拓扑图

Id是节点编号,Label是节点上显示的标签文字,这两个一般都是要的。第三列Weight是每个点的点权,不需要的话可以不写这一列,当然也可以改为其它名字或是在右边添加更多列。

然后打开文件->Import spreadsheet,选“节点表格”,会出现数据预览,没啥问题就点下一步,然后点完成,就应该能在“概览”界面内看到没有边相连的节点了。

利用Gephi生成可视化拓扑图


然后同理导入边,此时的csv文件结构应该是:

利用Gephi生成可视化拓扑图

Id是边的编号,Source和Target是边的起点编号和终点编号,Type表示边有向还是无向,这几列一般都是需要的。如果想给边加权值或者其他属性的话,也可以在右边新增列。

还是打开文件->Import spreadsheet,导入csv文件,这次选“边表格”,确认后就完全把图导入了。这是导入后的主界面:

利用Gephi生成可视化拓扑图


三、调整配色和布局:

节点和边的配色和大小调整可以使用左上方的“外观”区域。例如对于节点,可以选择标出的四种调整,分别是节点颜色、节点大小、标签颜色、标签大小。Gephi不但可以把节点和标签改为相同的颜色和大小,还可以根据节点的度设置渐变的颜色和大小,也支持根据导入节点的其它属性,显示不同的颜色。边也可以进行类似的设置。

布局调整主要使用左下方的“布局”区域,里面内置了很多运动函数,可以进行选择和参数调整,点击“运行”后,就可见图上节点在通过运动重新布局。

利用Gephi生成可视化拓扑图利用Gephi生成可视化拓扑图


四、导出图片:

切到“预览”栏,可以设置导出时所用的参数,然后点“刷新”,就能在右边看到效果图。调整完后,点击左下角的“SVG / PDF / PNG”按钮就能导出为相应格式的文件。


目前就用到了这些功能,其实Gephi还自带了很多统计功能,等将来用到后再补充吧。