R语言实现绘制Sankey桑基图(河流图、分流图)流程数据可视化
原文链接:http://tecdat.cn/?p=24996
我一直在寻找一种直观的方法来绘制流程中状态之间的流程或连接。一个明显的选择是,R软件包恰好满足了我的需求。
将数据设置为正确的格式是一个比较麻烦的过程。现在,本文仅说明如何构建多级图。
构造数据
此示例的计划是在六层中的每一层具有四个节点,并且层之间具有流。数据很好地说明了该过程,并且产生的结果与我所追求的最终图一致。我们必须为节点和边创建数据结构。我将从边开始,然后使用这些数据提取节点。
边数据帧由具有“从”节点(N1)和“至”节点(N2)的记录以及它们之间的流的值组成。在这里,我系统地构建了一个随机流网格,并删除了一些破坏对称性的记录。
> eges = data.frame
> > head(eges)
【R语言实现绘制Sankey桑基图(河流图、分流图)流程数据可视化】
文章图片
然后从边数据帧中提取节点的名称。根据标签计算节点的水平和垂直位置。这些位置不是严格必需的,因为软件包将为您确定合理的默认值。
> nds = data.frame
> nods$x = as.integer
> nos$y = as.integer
> rownames(noes) = ID
> head(nos)
文章图片
最后,我们构造了样式列表,这些样式将应用于每个节点。选择合适的颜色并为重叠部分引入透明度非常重要。
> pate = paste0
> stes = lapply(y, function(n) {
+list
+ })
> names= ID
构造桑基图河流图对象 现在我们可以构造河流图对象了。为此,我们将节点,边和样式数据结构连接到列表中,然后将“ river”添加到类属性列表中。
> rp <- list
> #
> class<- c
这样就可以制作图。
> plot
文章图片
结论 我可以想到很多类似这样的应用程序,因此我对可视化前景感到非常兴奋。
文章图片
最受欢迎的见解
1.R语言动态图可视化:如何、创建具有精美动画的图
2.R语言生存分析可视化分析
3.Python数据可视化-seaborn Iris鸢尾花数据
4.r语言对布丰投针(蒲丰投针)实验进行模拟和动态
5.R语言生存分析数据分析可视化案例
6.r语言数据可视化分析案例:探索brfss数据数据分析
7.R语言动态可视化:制作历史全球平均温度的累积动态折线图动画gif视频图
8.R语言高维数据的主成分pca、 t-SNE算法降维与可视化分析案例报告
9.python主题LDA建模和t-SNE可视化
推荐阅读
- 关于QueryWrapper|关于QueryWrapper,实现MybatisPlus多表关联查询方式
- MybatisPlus使用queryWrapper如何实现复杂查询
- python学习之|python学习之 实现QQ自动发送消息
- 【生信技能树】R语言练习题|【生信技能树】R语言练习题 - 中级
- 孩子不是实现父母欲望的工具——林哈夫
- 一起来学习C语言的字符串转换函数
- C语言字符函数中的isalnum()和iscntrl()你都知道吗
- opencv|opencv C++模板匹配的简单实现
- C语言浮点函数中的modf和fmod详解
- Node.js中readline模块实现终端输入