当前位置:首页>python>跟着期刊学画图Python-桑基图

跟着期刊学画图Python-桑基图

  • 2026-10-02 15:33:28
跟着期刊学画图Python-桑基图
原文来源:
期刊:Sustainable Cities and Society
论文:Urban energy resilience under climate change: definition, quantification, and enhancement
论文展示:

一、基础定义

桑基图是流图(Flow Diagram) 的一种,核心作用:可视化资源、数据、文献、资金、能量在多级节点之间的分流、汇聚、流转关系。
✅ 核心规则:流线宽度 = 流量大小,流线越粗,代表对应样本 / 流量数量越多;
理想情况下整体流量守恒(流入总量 = 流出总量

二、 三大基础组成要素节点 Node

  1. 节点 Node:矩形色块,代表分类、阶段、维度(论文图里:Scales、Classifications、Strategies、Research Methods 每一项都是节点)
  2. 流线 Flow / Link:连接不同节点的带状曲线,代表从上游节点流向下游节点的传递关系流量 Value
  3. 流量 Value:数值,决定流线和节点的宽度,也就是统计样本量3. 两种常见类型(和你的绘图直接相关)

三、分类

1、 普通纯色桑基图

流线为单一纯色,Plotly、D3、原生 matplotlib 支持,兼容性强,不挑 numpy 版本;缺点:无法做出从源节点到目标节点平滑过渡的渐变色,学术论文表现力偏弱。

2、 渐变桑基图(Gradient Sankey,你的论文图 A 就是这种)

流线颜色会从上游节点颜色平滑渐变到下游节点颜色,层次感更强,近年大量用于文献计量、能源系统的 SCI 配图;Python 主流实现库:gradient_sankey
⚠️ 重点:这个库依赖旧版 NumPy(1.x)编译扩展,NumPy2.0 会直接 ABI 报错。

四、 典型应用场景文献计量

  1. 多维度映射,展示研究尺度→分类→策略→研究方法之间的文献分布流向能源工程
  2. 一次能源从开采、转换、输送到终端消耗的能量分配经济金融
  3. 资金收支、预算分配、产业链价值流动交通 / 城市规划
  4. 人口出行流向、客流换乘互联网分析
  5. 用户行为路径、转化漏斗分流

五、代码

sankey_data 中的 source、target、value 需要替换为你的真实研究数据,同时节点变更时同步更新 layers。
如果你的真实数据是放在 Excel 表格里(source,target,value 三列),可以改代码,直接读取 Excel文件。
结果图展示:

最新文章

随机文章