相关文章推荐
豪爽的吐司  ·  Python ...·  10 月前    · 
备案 控制台
学习
实践
活动
专区
工具
TVP
写文章
专栏首页 用户7627119的专栏 Gephi--简单易用的网络图绘制工具
2 1

海报分享

Gephi--简单易用的网络图绘制工具

本期给大家推荐一款网络图绘制工具--Gephi。该工具简单、易用而且中文友好,非常适合初学者使用。

先给大家看看出图效果:

前二图都是Gephi自带的示例,图三是小编自己的一份简单数据。接下来会把图三的绘制过程一步一步地展示出来,供各位看官参考学习。

01

软件介绍及下载安装

Gephi是一款开源、免费软件,可用于各种图形和网络的可视化和探索,是最受欢迎的网络可视化软件之一。在生物科学领域,常用于基因共表达网络、蛋白互作网络、微生物相互关系网络等等类似的网络图形绘制。

官方网站提供免费下载:https://gephi.org/users/download/,可在Windows、Mac OS X和Linux系统上运行,进入后选择适合自己的操作系统下载即可。

安装包约70MB,但下载可能比较慢,请耐心等候。安装过程比较简单,一直确认/下一步就好了。

02

数据准备及解释

跟所有网络图绘制工具一样,Gephi同样需要导入"网"的数据,毕竟巧妇难为无米之炊嘛。

最简单常见的网络图数据无疑是:edges(边文件)和nodes(点文件)。格式如下:

横为行、竖为列,文件的第一行为列名,部分主要的列名是固定的,用于软件识别读取,如source、target、id等;第二行开始便是我们提供给软件的网络图数据,可从数据库截取,或者其他软件生成,也可手动输入。

edges(边文件)记录了边的数据,是网络图的核心,最简单的边文件由三列组成:source、target、weight。以下是项目解释:

source:该边的起点、出发点、源。

target:该边的终点、目标。

weight:边的权重,用数值表示,不考虑权重的可全部设置为1。

id:边的唯一ID,导入后可自动生成。选填。

label:边的标签名字,导入后可在图形中显示边的名字。选填。

nodes(点文件)用于描述点的属性,对最基本的网络图而言是可有可无的。如导入点文件必须注意id列:

id:点的唯一ID,应与边文件的source、target内容匹配。

label:点的标签名字,导入后可在图形中显示点的名字。选填。

除以上的基础列外,我们还能添加任意名称的任意列,用于图形中表达。如上面的点文件则添加了一列module,绘图时将module映射到颜色选项,即可用不同颜色表示不同的module。

如上编辑好了边文件和点文件,再保存成.csv文件即可导入Gephi。

03

界面简介

打开Gephi软件后会看到欢迎页面,我们先关掉不管,如下图【Tools--Language--中文】,可设置中文。并且软件会重启。

整个世界都变得美好了!! 同时会看到如下空白的界面,简单的作图只需用到外观、布局设置和图表展示区即可。外观设置区右上角的四个小图标分别表示节点颜色、节点的大小、节点标签颜色、节点标签大小,换成边的外观设置也同样。我们稍后将会用到。

初次打开软件图表展示区可能没有【预览设置】【预览】两项,可通过【窗口】按钮调出。并且以此代替上方的【预览】项,因为上方【预览】项经常出BUG。

04

数据导入

导入方式很简单,如下图【文件--导入电子表格】,

再选择已准备好的边文件,Gephi会自动识别文件的格式与数据类型,留意一下,出现不正确再调整。点击下一步,可以勾选想要导入的列和调整数据类型,因为source和target是必须的,所以显示为不可调整的灰色必选。

再点击确定,会展示输入报告。可看到导入的节点数和边数,图的类型可选【有向】和【无向】,若选【有向】,网络图的边将会出现小箭头,以表示边的指向。右边两个选项分别是将数据导入到“新工作区”和”已有工作区“。现在我们没创建工作区所以选【New】,而接下来导入点文件我们将选【Append】。

然后再导入点文件,过程一样就不再贴图了,注意最后一项要选【Append to existing workspace】。

05

图形调整

导入之后可以看到图表区是乱糟糟的一团,刚导入的边和点数据可以在【数据表格】里看到,另外如果用到右边的统计方法,其计算结果也会保存在这里。

回到图形界面,我们在布局区里的选择一个布局方法,这里我会用【Fruchterman Reingold】,大家也可以尝试不同的布局。点击【运行】,软件会按照算法对网络图进行布局调整,待图形稳定后再点击【停止】。也可以拖动图上的点手动调整点的位置。

现在看起来有点意思了,关系密切的点聚集到一块,而且可以看到边的线条有粗细之分,其实就是边数据的weight权重映射到线条宽度上,权重大的线条就粗。

纯黑白的太单调了,我们给它点颜色瞧瞧。

可以用点文件附加的module列用来映射颜色,我们在外观设置区选择【节点--Partition】和【颜色】,在【选择一种渲染方式】的下拉菜单里会有点文件数据里的各属性列,选择之后Gephi会给module里的各项自动分配一个颜色,也可手动调整,再点击【应用】。

接下来调整点的大小。在外观设置区选择【节点--Rank】和【大小】,下拉菜单里有一个默认选项【度】,即按照点的连接数调整点的大小,连接多的点就大,尺寸范围也可以调整。或者利用右边的统计工具计算一下【平均加权度】再映射到节点的大小上,如此图形的表现就更丰富了。

06

数据的修改与探索

前面提到的数据文件里可以添加label列来展示点或边的标签名,但我在数据导入的时候并没有添加,其实是可以后期添加的。

如下图调出数据表格界面,正好我的点ID就是点的名字,把Id列复制到Label列,再回到图形界面,点击下方的【显示节点标签】按钮即可。

另外,将鼠标指针移动到感兴趣的节点上,则会高亮显示与之直接相关的其他节点和边,可作简单的探索。

07

图形导出

调出【预览】界面,可以预览导出的图形;调出【预览设置】界面,还有很多可选可调的参数,如边的【弯曲】【透明度】等。下方的【刷新】按钮用于刷新预览图形,【SVG/PDF/PNG】按钮用于将图形导出至不同的格式。最后就能得到文首的图形。

本期分享就到这里,软件的中文和图形界面对于我们初学者来说真的非常贴心友好,耐心调整肯定能得到满意的图形,当然Gephi的功能也远不止这些,剩下的就靠大家逐步探索了。

文章分享自微信公众号:
生信交流平台

本文参与 腾讯云自媒体分享计划 ,欢迎热爱写作的你一起参与!

作者: 生信交流平台
原始发表时间: 2020-07-27
如有侵权,请联系 cloudcommunity@tencent.com 删除。