桑基图是一种可视化数据流动的图表,在数据分析中,常用于展示指标之间的连续变化及其关系。
Python中的 Ploty 库和 echarts 都可以绘制出比较美观的桑基图。本文以员工两年连续绩效数据为例,先演示如何使用 Plotly 绘制桑基图,并通过数据透视探索员工绩效的变化趋势。
我们创建一个虚构数据集来代表 1000 名员工在连续两年的绩效评分,假定绩效高中低的比例为 2:7:1,而第二年绩效结果增加员工离职的情况。
数据集构造过程中模拟的参数依常识设定,请勿作为真实数据和结论参考,如有雷同,纯属巧合。
统计数据转换:计算从第一年到第二年的绩效转换统计值。
创建节点列表:定义源节点和目标节点,转化为索引值。
配置颜色:设置节点和链接颜色,以增强图表的视觉效果。
:::tip[美化建议]
绘制桑基图:使用 plotly 的 Sankey 方法创建图表。
:::tip 绘图中常见的参数及作用在以下代码中注释,可以根据实际情况进行调整。 :::
由于桑基图对于节点的排列顺序是按照权重从大到小排列的,若希望指定节点顺序,如本例中我们希望按照绩效高中低排列,可以通过在交互式图表中拖拽调整。