R语言绘图系列
R
R语言复现
Nature子刊相关性网络图
- 04·25-
宜分享
Nature子刊相关性网络图
Brief Introduction
01
原图:
Figure1. 欧洲血统中14种自身免疫性疾病的遗传相关性。
左图显示了14种自身免疫性疾病的遗传相关性。使用跨性状LDSC估计遗传相关性。正方形的颜色强度和大小与遗传相关性的强度成正比(棕色=负相关,绿色=正相关)。星号表示在错误发现率水平 0.05 时具有统计显著性的遗传相关性。红框突出显示了系统性红斑狼疮与其他性状之间的相关性。
右图说明了显著遗传相关性状的网络。线条的颜色表示使用 LDSC 的遗传相关性估计的大小。线的宽度表示统计显著性。疾病名称缩写:AN = 强直性脊柱炎,ATD = 自身免疫性甲状腺疾病,CD = 克罗恩病,CEL = 乳糜泻,MS = 多发性硬化症,PBC = 原发性胆汁性肝硬化,PSOA = 银屑病关节炎,RA = 类风湿性关节炎,SJO = 干燥综合征,SLE = 系统性红斑狼疮,SSC = 系统性硬化症,T1D = 1 型糖尿病,UC = 溃疡性结肠炎,VIT = 白癜风。
接下来,我们就来复刻下右边这张图吧~
02
R实例:Nature子刊相关性网络图
① 导入包:
library(tidyverse)
library(ggplot2)
library(igraph)
library(ggraph)
library(RColorBrewer)
② 构造数据集:set.seed(10)
vertices = data.frame(name=LETTERS[1:12])
edges = as.data.frame(t(combn(LETTERS[1:12],2)))
edges = edges[sample(1:nrow(edges),30),]
colnames(edges)<- c("from","to")
edges$weight = c(sample(1:2,nrow(edges)-5,replace = T),
sample(4:5,5,replace=T))
# 计算degree
counts = count(data.frame(v = c(edges$from,edges$to)),v)$n
vertices = mutate(vertices, degree = counts,class = c(2,rep(1,11)))
head(vertices)
head(edges)
③ 构建graph,指定颜色:mygraph <- graph_from_data_frame(d=edges,
vertices=vertices,directed=F)
edges_color<- brewer.pal(11,"BrBG")[7:11]
node_color <- c("#476DA1","#AB3A2A")
④ 绘制相关性网络图:ggraph(mygraph,"linear", circular = T) +
geom_edge_arc0(mapping = aes(width = weight,color = as.factor(weight))) +
geom_node_point(aes(size=degree, fill=factor(class)),shape= 21, color='black')+
geom_node_text(aes(label=name, size = weight),
color ="white", angle=0,hjust=0.5,size=4) +
scale_edge_width(range = c(1,5),
guide = guide_legend(title = "Wight",
order=1))+
scale_size(breaks = seq(1, max(vertices$degree),3),
label = seq(1,max(vertices$degree),3),
range = c(8,15),
guide = guide_legend(title ="Degree",order = 2)) +
scale_fill_manual(values = node_color, guide = "none") +
scale_edge_colour_manual(values = edges_color,guide ="none") +
theme_void( )+
theme(legend.title = element_text(size=18),
legend.direction ="vertical",
legend.box ="horizontal",
legend.position ="right",
legend.justification="bottom")
现在: 长按扫码关注:科研生信充电宝 10元赞赏本文,即喜欢作者~ 即可直接解锁: 《R语言复现Nature子刊相关性网络图》全套代码和源文件 看到这里你还不心动吗? 赶紧关注、转发、点赞、分享,领取你的专属福利吧~ 好啦,以上就是今天推文的全部内容啦! 今天的分享就到这里啦~ 另外,本公众号建立了R语言和Python学习分享群,联系后台,拉您入群。
或直接添加小编,拉您入群:
版权声明:本文内容由互联网用户自发贡献,版权归作者所有,本公众号不拥有所有权,也不承担相关法律责任。 如果您发现本公众号中有涉嫌抄袭的内容,欢迎发送邮件至:kysxcdb@163.com 进行举报,一经查实,本公众号将立刻删除涉嫌侵权内容。 微信号|科研生信充电宝 · BIOINFOR · 永远相信美好的事情 即将发生
微信扫一扫
关注该公众号