輕輕鬆鬆繪製桑基圖
- 2019 年 12 月 17 日
- 筆記
定睛一看,右側不是熟悉的基因嗎?妥了,真是相關的。
好吧,我們開始提筆繪製走起,繪製桑基圖工具包還挺多,不僅從最高端的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
數據繪圖
代碼如下:

圖形如下:
