1.什么是相互作用网络图?

生物网络是复杂网络,也是以系统科学的思想研究生命科学的桥梁。网络中的节点可以是蛋白质,基因,RNA或DNA等,网络的边对应节点之间的物理、生化或功能上的相互作用。生物分子之间的相互作用并不是一成不变的,反应在基因调控网络上,则节点之间的边会因时间、空间或外部环境的变化而发生变化。网络比较和分析是生物网络的研究重点。网络中生物分子及其相互作用的显著变化,形成差异性网络,这种差异性变化对细胞信号传导、细胞发育、环境压力、药物治疗以及疾病状态的转变具有重大的参考价值。

网络图主要由边和节点组成,其中边代表了相互作用,边的粗细代表了一个维度的具体数值,节点代表了不同分类。

本文我们就来讨论一下相互作用网络图是如何绘制的。

2.绘图前的数据准备

​ demo数据可以在https://www.bioladder.cn/shiny/zyp/bioladder2/demoData/treemap/Network/Network.zip下载。

2.1 边(连线)数据

包含4列,前两列定义连线,从哪个节点到哪个节点,可以有多个层面。第三列是数值,定义连线粗细。第四列定义连线的颜色

2.2 节点数据(可选)

包含4列,第一列是边数据文件中的节点,第二列是该节点所在的分组。第三列定义节点的大小。第四列定义分组的颜色。

如果没有该数据,则会为节点添加一个默认的颜色和指定一个默认的大小。

3. R语言怎么画相互作用网络图

library(tidyverse)
library(networkD3)# 读取连线文件和节点文件
MisLinks = read.delim("https://www.bioladder.cn/shiny/zyp/bioladder2/demoData/Network/link.csv",sep = ",")
MisNodes = read.delim("https://www.bioladder.cn/shiny/zyp/bioladder2/demoData/Network/node.csv",sep = ",")# 处理数据
# 因为networkD3需要的连线数据,是节点文件里的名称的索引。所以,需要做一个名称到索引的转化
Node2index = list()
Node2index[MisNodes$name] = 0:length(MisNodes$name)MisLinks = MisLinks %>%mutate(source2 = unlist(Node2index[source])) %>%mutate(target2 = unlist(Node2index[target]))# 定义颜色
group2project = paste(unique(MisNodes$group),collapse = '","')
color2project = paste(unique(MisNodes$group_color),collapse = '","')
my_color <- paste0('d3.scaleOrdinal().domain(["',group2project,'"]).range(["',color2project,'"])')# 绘图
forceNetwork(Links = MisLinks, Nodes = MisNodes,Source = "source2", Target = "target2",Value ="value",NodeID = "name",Group = "group", opacity= 1,        # 透明度Nodesize="size",zoom = TRUE,       # 是否可以缩放opacityNoHover=1,  # 鼠标没有悬浮在节点上时,文字的透明度(0-1)colourScale = JS(my_color),   # 节点颜色,JavaScriptlegend=T, fontSize = 10,linkColour= MisLinks$colour)

4. BioLadder生信云平台在线绘制相互作用网络图

不想写代码?可以用BioLadder生信云平台在线绘制相互作用网络图。

网址:https://www.bioladder.cn/web/#/chart/11

R语言如何绘制相互作用网络图(27)相关推荐

  1. R语言可视化绘制及PDF使用字体参数列表:查看字体列表、可视化绘制图像中的字体参数列表、字体示例并写入pdf

    R语言可视化绘制及PDF使用字体参数列表:查看字体列表.可视化绘制图像中的字体参数列表.字体示例并写入pdf 目录 R语言可视化绘制及PDF使用字体参数列表:查看字体列表.可视化绘制图像中的字体参数列 ...

  2. R语言Kaplan-Meier绘制生存分析、Log-rank假设检验、Cox回归曲线实战案例:恶性黑色素瘤的术后数据生存分析

    R语言Kaplan-Meier绘制生存分析.Log-rank假设检验.Cox回归曲线实战案例:恶性黑色素瘤的术后数据生存分析 目录

  3. R语言可视化绘制基本图形

    R语言可视化绘制基本图形 简单条形图: 堆叠条形图分组条形图: 均值条形图与条形图的微调: spinogram图 饼图.直方图.密度图.箱图.小提琴图.线图.散点图: # Listing 6.1 - ...

  4. 【R语言 | 如何绘制带组内差异比较的柱形图】

    R语言 | 如何绘制带组内差异比较的柱形图 参考链接:R语言 | 如何绘制带组内差异比较的柱形图 结果如下: 代码如下: install.packages(ggpubr)//内置的包不需要安装 ins ...

  5. R语言ggplot绘制地图-报错汇总(一)

    R语言ggplot绘制地图-报错汇总 报错两例 报错1: 报错2: 报错两例 在用ggplot绘制地图时出现了两个报错,网上搜索了没有相关说明,虽然解决方式很蠢,但是可能对于出现同样报错的人会有帮助, ...

  6. R语言如何绘制韦恩图(6)

    如何绘制韦恩图 1.什么是韦恩图? ​ 维恩图用于展示在不同的事物群组(集合)之间的数学或逻辑联系,尤其适合用来表示集合(或)类之间的"大致关系",它也常常被用来帮助推导(或理解推 ...

  7. R语言如何绘制雷达图(32)

    1.什么是雷达图? ​ 雷达图是以从同一点开始的轴上表示的三个或更多个变量的二维图表的形式显示多变量数据的图形方法.轴的相对位置和角度通常是无信息的. 雷达图也称为网络图,蜘蛛图,星图,蜘蛛网图,不规 ...

  8. r语言做绘制精美pcoa图_科学网—R语言 PCA PCoA ggplot2 - 靳泽星的博文

    这一篇是衔接上一篇的,就是要用ggplot2程序包对PCA和PCoA进行可视化.代码我直接照搬过来了,只是绘图的时候用ggplot函数.ggplot2包实现了一个在R中基于全面一致的语法创建图形时的系 ...

  9. r语言做绘制精美pcoa图_三分钟绘制一张优美的PCoA图 | 云平台

    本文主要为您迅速绘制一张优美的PCoA图提供步骤指导(1-4要点),另附细节优化方法(5及之后的要点),可后期慢慢研究调整,同时提供相关分析方法说明和参考文献,为您深入了解提供支持. 1.了解输入数据 ...

最新文章

  1. 94年出生,6篇SCI,一作发Science,你还不放下手上玩的泥巴
  2. 为什么很多人考上了研究生变得不快乐了?
  3. power python_在 Power BI Desktop 中运行 Python 脚本
  4. c++向量和数组的区别_向量,矩阵和张量的导数 | 简单的数学
  5. Kmplayer播放器 绿色免安装版 2016 中文版
  6. fs-extra导出换行txt文件
  7. AMD院士站台 异构计算与OpenCL编程师资培训首站清华开讲
  8. java JLabel改变大小后如何刷新_到底一行java代码是如何在计算机上执行的
  9. 华为2288hv5服务器安装ESXI 6.7(三):安装ESXI(转)
  10. 如果多个用户同时修改同一客户记录,而且先后提交修改,Oracle 怎样保证该客户记录...
  11. java项目介绍_3月Github最热门的10个Java开源项目
  12. 【emWin】例程十:bmp图片显示
  13. android - Unable to add window -- token null is not for an application的解决方案
  14. xdb 服务_如何删除默认的XPT和XDB这两个服务
  15. “设计思维”学习——小总结
  16. <2021SC@SDUSC>【Overload游戏引擎】OvCore源码模块分析(三)——GlobalHelpers
  17. pandas笔记(7)DataFrame数学运算
  18. nginx域名反向代理
  19. 经纬度换算数值_常用经纬度转换
  20. IDEA报错: Port already in use: 1099

热门文章

  1. abaqus网格划分
  2. 震撼的视觉感,裸眼3d成为企业宣传最优选择
  3. 搭建个人云服务器系列 (二)- 公网访问
  4. 学习 | 针对学生及刚从业建筑人员对常用三款建筑建模软件的用户体验调研和竞品分析
  5. 蓝桥杯python第十三届国赛5月29日中高年组 围圈数数 数到几就出局 要想全剩男生 男生应该坐在哪
  6. 数字签名,数字信封的基本原理
  7. 如何爬取天猫评论数据
  8. SDK 和 API 的区别是什么?(转)
  9. 计算机网络基础知识之应用层
  10. 依山傍水房树间,行也安然,坐也安然