復(fù)現(xiàn)NC圖表:二分圖 (bipartite plot) 網(wǎng)絡(luò)繪制(三種方法)-應(yīng)用于細(xì)胞互作受配體展示-調(diào)控網(wǎng)絡(luò)展示等等

如題澎迎,這個標(biāo)題有點(diǎn)長,首先我們需要展示的圖是bipartite plot灵份,中文有叫二分圖哮洽、連線圖的,總之就是展示兩組之間網(wǎng)絡(luò)關(guān)系氛什》肆梗可以應(yīng)用的地方有很多,不只是我們介紹的互作關(guān)系贸铜、或者ligands-target蒿秦。起源是一篇《nature communications》文章的圖棍鳖,它展示的是ligand于targets渡处。原文提供了代碼祟辟,可以學(xué)習(xí)川尖!


image.png

(reference:Gliovascular transcriptional perturbations in Alzheimer’s disease reveal molecular mechanisms of blood brain barrier dysfunction)
ggraph叮喳,首先相比于igraph馍悟,在很多設(shè)置上因?yàn)榕cggplot互通锣咒,所以會簡單很多,沒有那么復(fù)雜趣兄,可操作性更強(qiáng)艇潭。layout可以自己設(shè)定蹋凝,也可以參照上面的鳍寂!

node_info <- rbind(data.frame(node = rownames(active_ligand_target_links), group="target"),
                   data.frame(node = colnames(active_ligand_target_links), group="ligands"))


no <- c(rep("no", 20), sample(c('up','down'), size = nrow(node_info)-20, replace = TRUE))
node_info$reg <- sample(no, size =nrow(node_info), replace = TRUE)


#構(gòu)建ggraph作圖數(shù)據(jù)
df_graph <- as_tbl_graph(as.matrix(active_ligand_target_links)) %>% 
  mutate(group=node_info$group, #添加分組信息
         reg  = node_info$reg)



#plot
# sugiyama
ggraph(df_graph, layout = 'igraph', algorithm='bipartite') +
  geom_edge_link(aes(colour=weight), edge_width =1)+
  scale_edge_color_gradientn(colours = c("grey80","grey50","grey30","black"))+
  geom_node_point(aes(fill=reg, filter= group =='ligands'), 
                  size=2,shape=21) +
  geom_node_point(aes(fill=reg, filter= group =='target'), 
                  size=2,shape=23)+
  scale_fill_manual(values = c("#E4502E","#69B7CE","black"),
                    breaks = c("up",'down',"no"),
                    labels = c("up",'down',"no"))+
  geom_node_text(aes(filter= group =='ligands',
                     label = name),
                  fontface = "italic",
                 hjust=1.1)+
  geom_node_text(aes(filter= group =='target',
                     label = name),
                 fontface = "italic",
                 hjust=-0.1)+
  coord_flip()+
  theme_minimal() +
  scale_y_discrete(expand = c(0.2,0.2))+
  ggraph::th_no_axes()




#調(diào)整layout

LO1 <- layout_as_bipartite(df_graph, maxiter=0);
re_pos <- c(seq(from = 0.5, by = 1, length.out = length(LO1[which(LO1[,2]==1)])),
            seq(from = 0.5, by = 1.1, length.out = length(LO1[which(LO1[,2]==0)])))

LO1[,1] <- re_pos



ggraph(df_graph, layout = LO1) +
  geom_edge_link(aes(colour=weight), edge_width =1)+ #連線
  scale_edge_color_gradientn(colours = c(alpha("grey90",0.5),
                                         alpha("grey60",0.5),
                                         alpha("grey30",0.5),"black"))+#連線顏色
  geom_node_point(aes(fill=reg, filter= group =='ligands'), 
                  size=2,shape=21) +#節(jié)點(diǎn)設(shè)置
  geom_node_point(aes(fill=reg, filter= group =='target'), 
                  size=2,shape=23)+
  scale_fill_manual(values = c("#E4502E","#69B7CE","black"),
                    breaks = c("up",'down',"no"),
                    labels = c("up",'down',"no"))+
  geom_node_text(aes(filter= group =='ligands',
                     label = name),
                 fontface = "italic",
                 hjust=1.1)+ #文字標(biāo)注
  geom_node_text(aes(filter= group =='target',
                     label = name),
                 fontface = "italic",
                 hjust=-0.1)+
  coord_flip()+
  theme_minimal() +
  scale_y_discrete(expand = c(0.2,0.2))+
  ggraph::th_no_axes()
image.png
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末隔心,一起剝皮案震驚了整個濱河市尚胞,隨后出現(xiàn)的幾起案子笼裳,更是在濱河造成了極大的恐慌,老刑警劉巖躬柬,帶你破解...
    沈念sama閱讀 217,277評論 6 503
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件拜轨,死亡現(xiàn)場離奇詭異,居然都是意外死亡允青,警方通過查閱死者的電腦和手機(jī)橄碾,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,689評論 3 393
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來颠锉,“玉大人法牲,你說我怎么就攤上這事∏砺樱” “怎么了拒垃?”我有些...
    開封第一講書人閱讀 163,624評論 0 353
  • 文/不壞的土叔 我叫張陵,是天一觀的道長瓷蛙。 經(jīng)常有香客問我悼瓮,道長戈毒,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,356評論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮,結(jié)果婚禮上省咨,老公的妹妹穿的比我還像新娘。我一直安慰自己敌蜂,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,402評論 6 392
  • 文/花漫 我一把揭開白布部蛇。 她就那樣靜靜地躺著巷查,像睡著了一般。 火紅的嫁衣襯著肌膚如雪许师。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,292評論 1 301
  • 那天檀蹋,我揣著相機(jī)與錄音贸桶,去河邊找鬼坠七。 笑死拄踪,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的耀盗。 我是一名探鬼主播叛拷,決...
    沈念sama閱讀 40,135評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼署浩,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了抢腐?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 38,992評論 0 275
  • 序言:老撾萬榮一對情侶失蹤迹鹅,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體粗梭,經(jīng)...
    沈念sama閱讀 45,429評論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡鉴嗤,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,636評論 3 334
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片坯认。...
    茶點(diǎn)故事閱讀 39,785評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤脊框,帶...
    沈念sama閱讀 35,492評論 5 345
  • 正文 年R本政府宣布,位于F島的核電站烂完,受9級特大地震影響抠蚣,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜履澳,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,092評論 3 328
  • 文/蒙蒙 一柱徙、第九天 我趴在偏房一處隱蔽的房頂上張望护侮。 院中可真熱鬧储耐,春花似錦晦攒、人聲如沸栋操。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,723評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽胞得。三九已至,卻和暖如春屹电,著一層夾襖步出監(jiān)牢的瞬間阶剑,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,858評論 1 269
  • 我被黑心中介騙來泰國打工危号, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留牧愁,地道東北人。 一個月前我還...
    沈念sama閱讀 47,891評論 2 370
  • 正文 我出身青樓外莲,卻偏偏與公主長得像猪半,于是被迫代替她去往敵國和親兔朦。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,713評論 2 354

推薦閱讀更多精彩內(nèi)容