热点新闻
学做NAR图表:ggraph做网络图
2023-07-11 10:17  浏览:508  搜索引擎搜索“早勤网”
温馨提示:信息一旦丢失不一定找得到,请务必收藏信息以备急用!本站所有信息均是注册会员发布如遇到侵权请联系文章中的联系方式或客服删除!
联系我时,请说明是在早勤网看到的信息,谢谢。
展会发布 展会网站大全 报名观展合作 软文发布

最近在NAR上看到一篇文章:





image.png

原文网络图如下:





image.png

我们借此机会,通过ggraph作图解析相关参数。详细注释代码和参数已上传QQ群文件!我做的图如下,有一点问题,但不影响我们对这个函数的解析。




image.png

加载R包和节点数据,可以是STRING分析得到的网络文件,也可以是miRNA对应靶基因文件,再或者可以是转录因子对应的调控文件等!

setwd("D:/KS项目/公众号文章/网络节点图") df <- read.csv("network.csv", header = T) colnames(df) <- c("ID", "path", "gene", "Pval") library(ggraph) library(tidygraph)

设置节点和边缘。

paths <- c("Node1", "Node2", "Node3") nodelist <- list() for (i in 1:length(paths)){ node <- subset(df, path == paths[i]) nodes <- data.frame(name = unique(union(node$path, node$gene))) nodes$values <- c(sum(node$Pval), node$Pval) nodelist[[i]] <- nodes } nodes <- rbind(nodelist[[1]],nodelist[[2]],nodelist[[3]]) nodes$cluster <- c(rep("Node1",1),rep("gene",12), rep("Node2",1),rep("gene",11), rep("Node3",1),rep("gene",10)) edges <- df[c("path","gene","Pval")] edges$class <- edges$path

构建作图文件。

layout_cir <- tbl_graph(nodes = nodes, edges = edges)

出图:

ggraph(layout_cir,layout='linear',circular = TRUE) + geom_node_point(aes(size=values,colour = cluster))+ geom_node_text(aes(x = 1.03 * x, y = 1.03 * y, label=name, color=cluster, angle = -((-node_angle(x, y) + 90) %% 180) + 90), hjust='outward') + geom_edge_arc(aes(colour=class))+ theme_void()+ theme(legend.position = "none")+ scale_colour_manual(values =c('#407972', '#961E28', '#D46724', '#0f8096'))+ scale_edge_colour_manual(values = c('#961E28', '#D46724', '#0f8096'))+ scale_size_continuous(range = c(2,8))+ coord_cartesian(xlim=c(-1.5,1.5),ylim = c(-1.5,1.5))


image.png

这样就完成了,也是美美的。如果觉得我的分享对你有用、有帮助的话,点个赞、分享一下再走呗!!!更多精彩请至我的公众号---KS科研分享与服务

发布人:b9f8****    IP:117.173.23.***     举报/删稿
展会推荐
让朕来说2句
评论
收藏
点赞
转发