定睛一看,右侧不是熟悉的基因吗?妥了,真是相关的。
好吧,我们开始提笔绘制走起,绘制桑基图工具包还挺多,不仅从最高端的JS库(D3、Ecgarts、highlight)到主流的数据科学编程工具(R、Python等)亦或者人人都能上手的自助式BI工具(PowerBI、Tableau等)都可以胜任此项工作。
R中有两个包有现成的桑基图函数:Networkd3、d3Network,包名大同小异,而且函数的参数都是一样的。但是今天我们采用ggalluvial工具包来实现,一个ggplot2的拓展包。
1
安装ggalluvial包,操作很简单,直接install,接着加载进来就行
2
整理数据集,这里给大家提供了一个ceRNA关系对应表,本次我们准备展示三者之间的关系,示例数据大家可以后台获取,首先我们读进数据,如下:
三者分别是mRNA,miRNA和lncRNA
3
统计每列单独的元素,如下:
可以看到mRNA一共9个,miRNA 6个,lncRNA 4个
4
格式转化
使用to_loads_from 函数将df数据框数据转为ggalluvial所需要的数据格式,本质上就是数据宽数据变为长数据。
5
数据绘图
代码如下:
图形如下: