R 语言科研绘图第 41 期 --- 桑基图-基础

在发表科研论文的过程中,科研绘图是必不可少的,一张好看的图形会是文章很大的加分项。

为了便于使用,本系列文章介绍的所有绘图都已收录到了 sciRplot 项目中,获取方式:

R 语言科研绘图模板 --- sciRplothttps://mp.weixin.qq.com/s/QA_8LVqjkdg4A16zLonw4w?payreadticket=HFXEx_kPj5sa4ZbON6PuBVE6hY4uONpt5fuR5mkt4E3SY1xabQ2teA__zTNdexdQ6rjzi8A

本期绘图预览:

1. 导入包

我们首先导入本期绘图用到的 R 包:

复制代码
library(networkD3)

2. 准备数据

接下来我们导入绘图用到的数据,在 sciRplot 中给大家提供了测试数据:

复制代码
data <- sciRplot_data

3. 准备配色

颜色的选择往往是一件让人特别纠结的事情,这里我们直接设置配色:

复制代码
color <- 'd3.scaleOrdinal() .domain(["group_A", "group_B","group_C", "group_D", "group_E", "group_F"]) .range(["#5470c6","#91cc75","#fac858","#ee6666","#73c0de","#3BA272"])'

也可以使用 sciRcolor 来设置配色,sciRcolor是为了 R 语言科研绘图开发的配色工具,包含了 100 种常用配色,详细信息见:

R 语言科研配色工具 --- sciRcolorhttps://mp.weixin.qq.com/s/XZol4VxvHnJD_49ij3f2mg?payreadticket=HCIggeb6g_gH72WlJ8g663z_umzjXR7nXKHv-x3VHGfDlQ_FUp2CWE-7Vbvo4ujDIUi6COo

4. 绘制图形

接下来我们通过下面的代码来绘制图形:

复制代码
p <-   sankeyNetwork(Links = links, Nodes = nodes,                 Source = "IDsource", Target = "IDtarget", Value = "value",                NodeID = "name", colourScale=color, LinkGroup="source",                fontSize = 15, width = 600, height = 400)p

5. 保存图形

最后我们保存绘制的图形:

复制代码
saveNetwork(p,"save/sankey-base.html")

sciRplot 介绍

为了解决 R 语言中科研绘图的问题,我推出了 sciRplot 项目。sciRplot 项目包含了以下内容:

100 种绘图代码,按照图形类型进行分类,包含 60基础绘图40进阶绘图

② 配备一站式 html文档 ,包含测试数据 ,代码一键复制交互式阅读提高用户体验

相关推荐
devilnumber7 小时前
Java 递归算法 详解 + 核心要点 + 实战运用 + 避坑指南
java·开发语言·算法
asdfg12589639 小时前
JavaBean是什么?怎么理解?有什么用途?
java·开发语言
dsyyyyy11019 小时前
JavaScript变量
开发语言·javascript·ecmascript
z落落10 小时前
C#WinForm 窗体切换与窗体传值(登录跳转案例)+WinForm 窗体传值(从上往下传、从下往上传)
开发语言·windows·c#
allway210 小时前
How to Echo Multiline to a File in Bash [3 Methods]
开发语言·chrome·bash
weixin_4624462310 小时前
手把手教你用 Bash 脚本自动更新 /etc/hosts —— 自动绑定网卡 IP 与节点名
开发语言·tcp/ip·bash
一个梦醒了10 小时前
安装git bash选项推荐
开发语言·git·bash
ct97811 小时前
React 状态管理方案深度对比
开发语言·前端·react
数量技术宅11 小时前
2026量化前沿:从Reddit热帖到Python实战,如何用赫斯特指数(Hurst)狙击虚假突破?
开发语言·python
华如锦11 小时前
面了很多 Java转AI Agent方向,一些面试题总结
java·开发语言·人工智能·python·ai