Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >实现绘制Sankey桑基图(河流图、分流图)流程数据可视化

实现绘制Sankey桑基图(河流图、分流图)流程数据可视化

作者头像
拓端
发布于 2022-03-05 02:40:40
发布于 2022-03-05 02:40:40
1.7K00
代码可运行
举报
文章被收录于专栏:拓端tecdat拓端tecdat
运行总次数:0
代码可运行

原文链接:http://tecdat.cn/?p=24996

我一直在寻找一种直观的方法来绘制流程中状态之间的流程或连接。R软件恰好满足了我的需求。

将数据设置为正确的格式是一个比较麻烦的过程。现在,本文仅说明如何构建多级图。

构造数据

此示例的计划是在六层中的每一层具有四个节点,并且层之间具有流。数据很好地说明了该过程,并且产生的结果与我所追求的最终图一致。我们必须为节点和边创建数据结构。从边开始,然后使用这些数据提取节点。

边数据帧由具有“从”节点(N1)和“至”节点(N2)的记录以及它们之间的流的值组成。在这里,我系统地构建了一个随机流网格,并删除了一些破坏对称性的记录。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
> eges = data.frame
> 

> head(eges)

然后从边数据帧中提取节点的名称。根据标签计算节点的水平和垂直位置。这些位置不是严格必需的,因为软件包将为您确定合理的默认值。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
> nds = data.frame
> nods$x = as.integer
> nos$y = as.integer
> rownames(noes) = ID
> head(nos)

最后,我们构造了样式列表,这些样式将应用于每个节点。选择合适的颜色并为重叠部分引入透明度非常重要。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
> pate = paste0
> stes = lapply(y, function(n) {
+   list
+ })
> names= ID

构造桑基图河流图对象

现在我们可以构造河流图对象了。为此,我们将节点,边和样式数据结构连接到列表中,然后将“ river”添加到类属性列表中。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
> rp <- list
> #
> class<- c

这样就可以制作图。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
> plot

结论

通过仔细观察,可以得到不少信息,桑基图绘制目的就是让各类别间的区别和联系更加直观展现出来。今天的分享到此结束,下次再见!


本文摘选《R语言实现绘制Sankey桑基图(河流图、分流图)流程数据可视化

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2022-01-12,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 拓端数据部落 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
桑基图
R语言里面主要用networkD3包的sankeynetwork()函数. 主要参数为:
生信编程日常
2020/04/01
1.5K0
桑基图
ggalluvial绘制桑基图
桑基图(Sankey diagram),即桑基能量分流图,也叫桑基能量平衡图。它是一种特定类型的流程图,图中延伸的分支的宽度对应数据流量的大小,通常应用于能源、材料成分、金融等数据的可视化分析。因1898年Matthew Henry Phineas Riall Sankey绘制的“蒸汽机的能源效率图”而闻名,此后便以其名字命名为“桑基图”。
作图丫
2022/03/29
3.1K0
ggalluvial绘制桑基图
用Python绘制诱人的桑基图,一眼看透熬夜和狗粮的秘密
桑基图(Sankey diagram),即桑基能量分流图,也叫桑基能量平衡图。它是一种特定类型的流程图,图中延伸的分支的宽度对应数据流量的大小,通常应用于能源、材料成分、金融等数据的可视化分析。因1898年Matthew Henry Phineas Riall Sankey绘制的"蒸汽机的能源效率图"而闻名,此后便以其名字命名为"桑基图"。
刘早起
2020/09/07
1.8K0
用Python绘制诱人的桑基图,一眼看透熬夜和狗粮的秘密
Python 绘制惊艳的桑基图
很多时候,我们需要一种必须可视化数据如何在实体之间流动的情况。例如,以居民如何从一个国家迁移到另一个国家为例。这里演示了有多少居民从英格兰迁移到北爱尔兰、苏格兰和威尔士。
数据STUDIO
2022/02/24
2K0
Python 绘制惊艳的桑基图
三组(连续)桑基图绘制(含百分比)学习
桑基图(Sankey Diagram) 是一种用于可视化数据流的图表类型,常用于展示数据、能量、物料、资金或其他资源在系统中不同部分之间的流动和分配情况。桑基图通过宽度可变的流线(即流动线)来表示流动的大小,流线越宽,表示的流动量越大。它非常适合展示复杂的系统、过程或多个类别之间的关系。
凑齐六个字吧
2024/09/05
3900
三组(连续)桑基图绘制(含百分比)学习
教你用pyecharts制作交互式桑基图,赶快学起来吧!
由于工作的需要,经常需要进行可视化展示,除了一些常用的BI工具,我也会使用python对数据进行可视化。
派大星的数据屋
2022/04/02
3.3K1
教你用pyecharts制作交互式桑基图,赶快学起来吧!
流量结构分布图——桑基图(Sankey)
桑基图作为相对复杂的图表种类,平时很少用到,不仅仅是因为它的引用场景相对狭窄,另一方面则是制作难度相对较大,门槛较高。 不过针对第一个问题,如果你能很好地理解自己所涉及到的业务数据结构及想要表达和呈现的维度信息,那么关键时刻使用桑基图确实会让你的报告锦上添花。 桑基图用于表达流量分布于结构对比,最初的发明者使用它来呈现能量的流动与分布。 百度百科给了桑基图相对完善的解释: 桑基图(Sankey diagram),即桑基能量分流图,也叫桑基能量平衡图。它是一种特定类型的流程图,图中延伸的分支的宽度对应数据流量
数据小磨坊
2018/04/11
7.3K0
流量结构分布图——桑基图(Sankey)
pyecharts-9-绘制桑基图
本文详解地介绍了如何制作桑基图,使用的可视化库是强大的Pyecharts(版本1.7.1,版本一致很重要)。文章将从如下几个方面进行介绍:
皮大大
2021/03/01
2.3K0
pyecharts-9-绘制桑基图
ggalluvial|炫酷桑基图(Sankey),你也可以秀
本文使用TCGA数据集中的LIHC的临床数据进行展示,大家可以根据数据格式处理自己的临床数据。也可后台回复“R-桑基图”获得示例数据以及R代码。
生信补给站
2020/08/06
4K0
network3D: 交互式桑基图
桑基图(Sankey diagram),即桑基能量分流图,也叫桑基能量平衡图。它是一种特定类型的流程图,图中延伸的分支的宽度对应数据流量的大小,通常应用于能源、材料成分、金融等数据的可视化分析。 也可以视为一种层级网络图,比如展示上一篇文章中的生物信息课程网络图;也可以展示菌群随时间变化的趋势,如3分和30分文章差距在哪里文章所示哈扎人肠道菌群的季节变化规律。 下面将用2个例子,以我们生物信息研讨班涉及的学习框架和课程分配为示例数据,展示如何用常见网络图数据绘制桑基图。 最简单桑基图 第一列为上游,第二列为
生信宝典
2018/03/30
1.7K0
network3D: 交互式桑基图
手把手教你Plotly绘制桑基图!
本文介绍的是利用Plotly绘制一种相对少见的可视化图形:桑基图,这个图形可以说是展现数据流动的利器。
周萝卜
2022/09/28
2.4K0
手把手教你Plotly绘制桑基图!
Pyecharts一文速学-绘制桑基图详解+Python代码
比起matplotlib,pyeacharts的图表要丰富而且好看,这取决于它是基于百度团队使用Javascript开发的商业级数据图表。而且pyechart文档全,便于开发和阅读文档,熟练掌握后是一种非常好用的数据可视化的工具之一。当然相比pandas的plot代码会繁琐一些,其中一些操作类方法也是比较复杂的,需要对其有个大概的掌握才能作出满意的图表。 此系列文章将被纳入我的专栏一文速学系列-Pyecharts数据可视化,基本覆盖到数据分析日常业务BI报表以及常规的数据可视化以及衍生图表方方面面的问题。从基础的数据图表操作逐步入门到复杂的图表BI制作等复杂操作,以及专业的Pyecharts常用函数参数讲解,我都将花费了大量时间和心思创作,如果大家有需要从事数据分析或者数据开发、数学建模、Python工程的朋友推荐订阅专栏,将在第一时间学习到最实用常用的知识。此篇博客篇幅较长,值得细读实践一番,我会将精华部分挑出细讲实践。博主会长期维护博文,有错误或者疑惑可以在评论区指出,感谢大家的支持。
fanstuck
2025/01/15
7390
Pyecharts一文速学-绘制桑基图详解+Python代码
「R」数据可视化17:桑基图
文献里的桑基图:展示了克罗恩病患者的菌群变化 图片来源:https://www.biorxiv.org/content/10.1101/772483v1.full
王诗翔呀
2020/07/03
2.9K0
「R」数据可视化17:桑基图
流程图(三)利用python绘制桑基图
1、桑基图经常用于能源、金融行业,对材料、成本的流动进行可视化分析。现在很多互联网行业还使用桑基图做用户流动性分析,能很好地观察数据成分的变动大小及变动方向。
HsuHeinrich
2025/01/01
2560
流程图(三)利用python绘制桑基图
太酷了!手把手教你用 Python 绘制桑基图! | 用户行为路径分析
对于很多产品来说,分析用户行为都是非常重要的。用户分析能推动产品的迭代,为精准营销提供一些定制化服务,驱动我们做一些产品上的决策。常用的用户专题分析方法,包括用户分群、留存分析、转化分析、行为路径分析和事件分析、用户画像、用户增长等。
杰哥的IT之旅
2022/05/17
1.7K0
太酷了!手把手教你用 Python 绘制桑基图! | 用户行为路径分析
python可视化 | 地理桑基图的绘制方法
我回答目前常用的库包不能直接绘制这样的桑基图,我错了,应该回答是目前常用的库包不能绘制这样漂亮些的桑基图。
郭好奇同学
2021/05/28
1.8K0
python可视化 | 地理桑基图的绘制方法
数据之流:Pyecharts桑基图的多维视角与绘制艺术
桑基图(Sankey Diagram)是一种流程图,用于显示一组元素之间的关系和流动。它主要用于展示资源、能量、信息等在各个环节之间的流向,以及流向的数量关系。在数据可视化领域,桑基图常常被用来展示复杂系统中各个组成部分之间的相互影响和交互。
一键难忘
2024/01/28
9091
R优雅的绘制交互式桑基图
R语言数据分析指南
2023/08/18
5100
R优雅的绘制交互式桑基图
pavian结果可视化
pavian 是一款基于 shinny 的 R 包,可以生成交互式的网页结果。也可以使用在线版本的pavian。支持 kraken,metaphlan 格式结果。如果要利用pavian 可视化 centrifuge 结果,需要首先将其转换为 kraken 格式结果。
生信喵实验柴
2023/02/24
1.4K0
pavian结果可视化
R语言实现桑基图绘制
以上包中ggalluvial,networkD3,riverplot三个均可构建桑基图,当然从简单到复杂就是networkD3->ggalluvial->riverplot。那么接下来我们看下具体如何实现图的绘制。
一粒沙
2020/02/25
10.5K1
相关推荐
桑基图
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验