可视化技术可视化小技巧,Excel绘图太麻烦?Python轻松绘制桑基图
桑基图(Sankey diagram) , 即桑基能量分流图 , 也叫桑基能量平衡图 。 它是一种特定类型的流程图 , 图中延伸的分支的宽度对应数据流量的大小 , 通常应用于电商、材料成分、金融等数据的可视化分析 。
因1898年Matthew Henry Phineas Riall Sankey绘制的“蒸汽机的能源效率图”而闻名 , 此后便以其名字命名为“桑基图” 。
本文插图
现如今的可视化软件行业如此发达 , 制作此类桑基图已非常方便 , 从最高端的JS库(D3、Echarts、highchart)到主流的数据科学编程工具(R、Python等)亦或者人人都能上手的自助式BI工具(PowerBI、Tableau等)都可以胜任此项工作 。
今天我们就用Python制作上面这张桑基图 , 简单容易 , 快速上手!
数据源 下图中为准备好的数据源 , 每一行为城市对照区域以及相应的旅客人数 。
本文插图
【可视化技术可视化小技巧,Excel绘图太麻烦?Python轻松绘制桑基图】
代码书写 这里我用的是Python notebook , 开始之前需要先安装可视化包pyecharts , 直接命令行输入pip3 install pyecharts 即可 。
1、首先导入两个模块 , options以及Sankey , 其中options负责调节标签、线条之类的 , Sankey为桑基图 。
其次输入桑基图参数nodes , 主要格式为{'name':'字段'} , 表格中A/B列涉及到的所有字段 , 都要输入进去 。
本文插图
2、接着输入参数links , 如下图所示 , 每一个小参数 , 即为Excel表中的每一行 , source对应着A列 , target对应着B列 , value对应着C列 , 以此来完成线条的对应情况 。
本文插图
3、新建一个桑基图实例
新建一个桑基图实例C , 并赋予参数 , 完成可视化展示 , 如下图所示:
本文插图
其中参数opacity 是设计线条颜色深浅(透明度);curve参数是设计线条弯曲程度的;position参数用于设计图例文字位置 , 这里放置于图形右侧 。
成图如下所示:
本文插图
从图形中我们可以看出城市上海通往各区域的人数远远多于北京和杭州市 , 且在东亚地区具有较大优势 , 东南亚区域三城市人数相当 , 中亚、西亚、非洲人数相对较少!
小结 根据线条的宽度 , 数据情况一目了然!可以说桑基图是一个不错的可视化图形 , 无繁杂的数据 , 直观、便捷的一款图形 , 推荐给大家!如果觉得有用 , 欢迎关注我 , 定期分享数据小技巧!
推荐阅读
- 龟鳖行情与技术|各地龟苗交易动态
- 游戏小解说|收藏好,股价腰斩的票你会去买吗?现在教你一招超跌股的选股技巧
- 【理综】高考倒计时,理综怎样才能分数最大化?这些技巧你掌握了吗?
- 中国新闻网|侯立安院士:研发集成空气净化和消杀技术应用战“疫”
- ACG次元饭|学会快去疼爱千代,火影忍者:傀儡忍者怎么玩?这些技巧大神总结
- 黑叔科技 4K全面屏+独创性屏下透镜技术,你粉了吗,索尼顶级5G概念机曝光
- ACG次元饭|火影忍者:傀儡忍者怎么玩?这些技巧大神总结,学会快去疼爱千代
- 牧魂人|联盟小技巧:冷门上单牧魂人,技能加点这样选,让你更好度过前期
- dnf|DNF:第三季阿拉德探险记轻松满级,这些小技巧需要掌握
- 游戏机实用技术|《命令与征服 重制版》开启折扣,折后119元
