R 语言科研绘图第 43 期 --- 桑基图-冲击

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

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

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

本期绘图预览:

1. 导入包

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

复制代码
library(ggplot2)library(ggalluvial)library(reshape)

2. 准备数据

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

复制代码
data <- sciRplot_data

3. 准备配色

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

复制代码
colors <- sciRcolor::pal_scircolor(37)[1:5]

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

4. 绘制图形

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

复制代码
p <-   ggplot(data, aes(x = X, y=100 * value, fill = Type, stratum = Type, alluvium = Type))+  geom_stratum(width = 0.5, color='white')+  geom_alluvium(alpha = 0.5, width = 0.5, curve_type = "linear") +  theme_void(base_size = 25) +  theme(legend.position = "top") +  scale_fill_manual(values = colors)p

5. 保存图形

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

复制代码
ggsave("save/sankey-alluvium.png", p, width = 8, height = 6, dpi = 300)

sciRplot 介绍

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

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

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

相关推荐
Sarvartha10 小时前
final 关键字
java·开发语言
程序员Sunday11 小时前
JavaScript 事件循环面试题,宏任务与微任务怎么执行|Sunday面试指南
开发语言·javascript·面试·校招·事件循环·程序员sunday
zhangzeyuaaa12 小时前
Ruby 多线程、GVL(GIL)与 Mutex 完全指南
开发语言·前端·ruby
谢亮_vipxieliang13 小时前
用 PHP 构建轻量级 REST API:从路由到鉴权的完整实践
开发语言·后端·php
思无邪6613 小时前
用 AI 做 JS 逆向:从抓包到复现的完整方法论
开发语言·javascript·人工智能
H.莓飛13 小时前
【数据结构】二叉树_OJ题
linux·开发语言·数据结构·算法
零基础12314 小时前
Ubuntu 常用命令汇总
linux·运维·开发语言
外收内放14 小时前
Python基础语法练习题(57-58)
开发语言·python
时间的拾荒人15 小时前
Qt 界面美化实战:QSS 样式表
开发语言·qt·面试
杨运交15 小时前
[076][核心模块]构建优雅的Java异常处理框架:从错误码到全局异常处理
java·开发语言