python pyecharts.charts Sankey排序问题

2021-02-20 10:10发布

[图]想按照Topic1-Topic7排序,这个应该如何调整啊,在数据中是按照这个顺序排的,但是现实就乱了!

想按照Topic1-Topic7排序,这个应该如何调整啊,在数据中是按照这个顺序排的,但是现实就乱了!


2条回答
我是大脸猫 - 峡谷钢琴家
2楼-- · 2021-02-20 17:23

桑基图(Sankey diagram),即桑基能量分流图,也叫桑基能量平衡图。它是一种特定类型的流程图,图中延伸的分支的宽度对应数据流量的大小,通常应用于能源、材料成分、金融等数据的可视化分析。因1898年Matthew Henry Phineas Riall Sankey绘制的“蒸汽机的能源效率图”而闻名,此后便以其名字命名为“桑基图”

利用python的pyecharts绘制桑基图

1.node(所有节点)

#形如      {'name': '  '}

2.link

#形如     {'source':'   ','target':'  ','value':   }

简单的代码示例:

from pyecharts import options as optsfrom pyecharts.charts import Sankeynode =[{'name': '内蒙古'},{'name': '基里巴斯'},{'name': '也门'},{'name': '古巴'},{'name': '喀麦隆'},{'name': '多米尼克'},{'name': '中非共和国'}]link =[{'source': '内蒙古', 'target': '中非共和国', 'value': 165000},{'source': '内蒙古', 'target': '也门', 'value': 136200},{'source': '内蒙古', 'target': '古巴', 'value': 213000},{'source': '内蒙古', 'target': '喀麦隆', 'value': 16560300},{'source': '内蒙古', 'target': '基里巴斯', 'value': 2831400},{'source': '内蒙古', 'target': '多米尼克', 'value': 101400}]pic = (Sankey().add('',node,link,linestyle_opt=opts.LineStyleOpts(opacity = 0.3, curve = 0.5, color = 'source'),label_opts=opts.LabelOpts(position = 'right'),node_gap = 30,#节点之间的距离,(查看垂直图片的操作orient="vertical")).set_global_opts(title_opts=opts.TitleOpts(title = '通话记录')))pic.render('test.html')

打开网页如下(具体有关更多的设置请看官方的API):

#节点之间的距离 node_gap=30

#查看垂直图片的操作orient="vertical",


kitidog2016
3楼-- · 2021-02-22 13:59

桑基图(Sankey diagram),即桑基能量分流图,也叫桑基能量平衡图。它是一种特定类型的流程图,图中延伸的分支的宽度对应数据流量的大小,通常应用于能源、材料成分、金融等数据的可视化分析。因1898年Matthew Henry Phineas Riall Sankey绘制的“蒸汽机的能源效率图”而闻名,此后便以其名字命名为“桑基图”

利用python的pyecharts绘制桑基图

1.node(所有节点)

#形如      {'name': '  '}

2.link

#形如     {'source':'   ','target':'  ','value':   }

简单的代码示例:

from pyecharts import options as optsfrom pyecharts.charts import Sankeynode =[{'name': '内蒙古'},{'name': '基里巴斯'},{'name': '也门'},{'name': '古巴'},{'name': '喀麦隆'},{'name': '多米尼克'},{'name': '中非共和国'}]link =[{'source': '内蒙古', 'target': '中非共和国', 'value': 165000},{'source': '内蒙古', 'target': '也门', 'value': 136200},{'source': '内蒙古', 'target': '古巴', 'value': 213000},{'source': '内蒙古', 'target': '喀麦隆', 'value': 16560300},{'source': '内蒙古', 'target': '基里巴斯', 'value': 2831400},{'source': '内蒙古', 'target': '多米尼克', 'value': 101400}]pic = (Sankey().add('',node,link,linestyle_opt=opts.LineStyleOpts(opacity = 0.3, curve = 0.5, color = 'source'),label_opts=opts.LabelOpts(position = 'right'),node_gap = 30,#节点之间的距离,(查看垂直图片的操作orient="vertical")).set_global_opts(title_opts=opts.TitleOpts(title = '通话记录')))pic.render('test.html')

打开网页如下(具体有关更多的设置请看官方的API):

#节点之间的距离 node_gap=30

#查看垂直图片的操作orient="vertical",