Gephi绘制网络图初步探索

1. Gephi 基本功能简介

近期因为要绘制特效基因网络图,所以开始学习Gephi, Gephi是一款功能很强大的网络绘制软件,对于网络可视化很有效,可在官网下载: https://gephi.org/users/download/
自己之前主要是使用cytoscape绘网络,这两款软件可以说是各有特点,但是这篇笔记只讲Gephi,以后再总结cytoscape的使用

1.1 数据输入格式

Gephi软件的数据输入需要准备两份: (1) 边(edges)关系表格 (2) 点(node)表格

  • 边关系表格
    边关系表格的格式如下,前两列列名必需为 source, target , 第三列开始可以是其它的列值,我这里是Pearson系数,表征边关系的强弱
    edgesTable
  • 点表格
    点表格的第一列 id 是必需的,另外自己可以添加 label 列(点标签) 和 class 点集的分类(后续可根据分类为不同组的节点绘制不同颜色,同一组内的节点绘制同一种颜色)
    NodesTable
1.2 Gephi界面初探

下载好JDK8,然后安装上Gephi, 打开Gephi就会出现以下界面:
overview
我下载的时Gephi 0.9.2版本,此版本既有英文又有中文,图中的界面分为三块:

  • 最左边上面的一列是外观(appearance),我们可以在这里设置节点和边的颜色,大小等等属性
  • 最左边下面的一列是布局(layout), 我们可以在这里设置整体网络的结构,可以是circular 等等
  • 第二列中间最大的画面,写了一个 , 这里就是我们修改网络时的展示界面
  • 最右边的一列,右上角的 上下文(context) 主要就是网络的一些基本属性,例如网络的节点数目,边数目
  • 最右边下面的那一列,过滤 用于过滤网络中的满足某些条件的节点和边, 统计用于表述网络属性,例如网络平均度,图密度,网络直径等等
1.3 数据导入

我先导入边文件,点击 文件 -> 打开

importimport
import
图的类型可以选择 混合的,有向图, 无向图
注意 当我们导入了边关系的表格之后, 再次导入点关系的表格时, 要选择 Append to existing workspace, 这样我们导入的边和点,就在同一个工作空间内了

append to existing workspace

2. 设置节点的属性

2.1 设置节点颜色

导入数据之后,外观这里会有如下界面显示,我们分别选择 节点 或者 就可以分别设置节点和边的属性(颜色,大小等等)。 点击调色盘图像可以设置颜色,调色盘旁边的同心圆可以设置节点大小(边没有这个设置) , A一个下划线的图标 用于设置标签颜色, TT用于设置标签大小
nodes

  • 统一的(unique) 指的是,对所有的节点实施同一种颜色设置
  • partition 这里可以根据我们对节点的分类,对不同的分类中的节点上色,我之前导入的数据中有为每个节点标注了所属的class类(subnet1, subnet2, subnet3, subnet4 …), 因此我点击之前我设置的class就会弹出 不同class的颜色配置
    partition
    选择class
    class
    Gephi提供调色板,我们可以用调色板生成不同的颜色 ( 点击调色盘 - > 生成 ),会出现以下反转调色盘的界面,我点击Blue Ocean, 生成8种蓝色渐变色,再次点击确认,我们就为自己的不同分类的节点画上了渐变蓝色
    plattecolor of nodes
2.2 设置节点大小

点击 节点 -> 第二个同心圆 - > Ranking -> 渲染方式选择 (这样它就会根据度的数目来设置节点的大小,如果一个节点的度数越多,那么它就越大,反之它就越小) 这里我选择最小尺寸20,最大尺寸50

size

2.3 设置布局

Gephi提供多种布局算法,也可以自己下载插件扩充布局样式( 工具 -> 插件 ),关于布局设置可以详见: https://gephi.org/tutorials/gephi-tutorial-layouts.pdf
我选择 Fruchterman Reingold 布局,点击运行,等网络稳定之后点击停止
layout
可以看到咱们的网络已经初具雏形了
net

2.4 关于边的属性

我们的边也可以设置颜色,默认情况下,如果我们为节点分了类标注了不同的颜色,那么我们和节点直接相连的那些边的颜色是和源节点一样的。我们也可以为所有的边设置同样的颜色(点击统一的 unique 即可), 也可以根据class分类为不同分类下的边设置不同的颜色(点击Partition -> 自己设置好的分类的那一列即可)。 边的粗细可以在预览(preview)里面更改。
edges

3. 图的设置

我们中间最大的这个图的工作界面也有很多小的工具可以使用
huabu
最常用的就是:

  • 左边那一列中类似于手的那个按钮:我们可以用来拖动图中的节点
  • 左边那一列中小钢笔的按钮: 可以为我们的节点着色
  • 下面那一行中的第一个小灯泡按钮,可以更改我们画布的背景色,这里我们颜色更改为黑色
    black
  • T字加粗的那个按钮,可以显示我们节点的标签
    另外还有标签字的粗细大小调整,这个就不详述了, 大家可以自己点击看看

4. 预览(preview)

图片在概览(overview)中绘制好后,我们就转到预览(Preview),来为图片最后的输出做一些调整和准备
layout
点击预览按钮后,我们转到了预览界面, 此时一定要首先点击 刷新 按钮,否则预览画布中不会自动加载我们overview中的图。 在预览界面中 对网络做了调整之后,也一定要点击 刷新 按钮 才能使我们在预览中的更改生效。
现在我把预览中的背景变黑,并且调整节点的透明度为50,点击刷新
在这里插入图片描述transparent

大功告成! 此时还可以调整边的厚度(bold) 来更改边的粗细,我设置边的厚度为2,可以看到边确实边厚了
edges bold

after set edges bold

5. 导出

在Gephi中绘制好网络图后,点击 文件 -> 输出 选项这里可以设置我们输出文件的大小

settings of export
注意 在输出这里Gephi有一个较大的bug, 那就是如果我们图中的数据节点较多,那么它可能在输出 PDF 和 SVG的时候 就只有边,而不导出节点,类似于下面这样
no nodes of pdf
我查阅了一些Bug解决方案,但是对我的电脑没用,所以我直接通过设置选项中PNG图片的像素大小,来获取高分辨率的网络图了,虽然我的电脑不能解决,但是bug方案可能对别人的电脑有价值,所以也贴出来供大家参考:

  • https://github.com/gephi/gephi/issues/1760 Nodes not exported to PDF
  • https://github.com/gephi/gephi/issues/1759 Nodes not exported to PDF
  • http://forum-gephi.org/viewtopic.php?t=6254 Nodes not exported to PDF
  • https://github.com/gephi/gephi-plugins/pull/161 Nodes not exported to PDF

6. 参考链接

  • https://yulab-smu.github.io/clusterProfiler-book/chapter12.html#browsekegg clusterProfiler
  • https://www.jianshu.com/p/86145943695a Gephi
  • https://zhuanlan.zhihu.com/p/26718634 Gephi
  • http://wencke.github.io/ GOplot
  • https://mp.weixin.qq.com/s/Flibu9DFjUUmOM_FctPeSQ 桑基图
  • https://gephi.org/tutorials/gephi-tutorial-layouts.pdf Gephi layout tutorial
  • 17
    点赞
  • 116
    收藏
    觉得还不错? 一键收藏
  • 6
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值