桑基图有何作用,桑基图又是咋做出来的( 八 )


西北地区:陕西省,甘肃省,青海省,宁夏回族自治区,新疆维吾尔自治区
经处理后的数据形式为:
桑基图有何作用,桑基图又是咋做出来的

当然,上述这种形式的表格还是不利于我们绘制桑基图,我们还需将其转化成以下形式:
桑基图有何作用,桑基图又是咋做出来的

到这里,我们就可以开始作图了。

制图代码
在绘制图形前,需要了解桑基图的两个概念,一个是所有类别的集合,称之为 nodes,一个是子类、父类、数据的三方集合,称之为 links。在具体绘制前,我们需要将上述数据处理成 Pyecharts 可以识别的 nodes 和 links 数据格式。下面给出具体代码:
生成 nodes 代码桑基图有何作用,桑基图又是咋做出来的


生成 links 代码桑基图有何作用,桑基图又是咋做出来的

在取得绘制桑基图必须的数据后,我们就可以直接利用 pyecharts 进行绘图了
c = ( Sankey() .add("各地区GDP(亿元)" ,nodes ,links ,linestyle_opt=opts.LineStyleOpts(opacity = 0.4 ,curve=0.5 ,color="source" ,type_="dotted"), label_opts=opts.LabelOpts(position="right",), ) .set_global_opts(title_opts=opts.TitleOpts(title="全国各地区GDP桑基图")) ) c.render(\u0026#39;Sankey_GDP.html\u0026#39;) # 结果可在电脑工作路径中找到图形展示
绘制的成型图如下所示,你可以将鼠标放置在图形任何位置,相应的会显示出各自数据,你甚至可以拖动数据条,以你自己觉得好看的组合方式进行排列,操作方式只需点击图形两边的方块。
桑基图有何作用,桑基图又是咋做出来的

(注:更为美观的图请点击文末公众号链接)

图形解读
针对上面全国各地区GDP桑基图,我们可以清楚的得到以下三点结论:
1、从省市角度看,广东省、江苏省、山东省的线条最宽,表明其2018年的GDP体量最高,对我国的GDP贡献值最大;2、从区域角度看,华东地区是我国经济最为繁荣的区域,华北、华中、华南地区次之,西南、东北、西北地区较为落后;3、从各自区域贡献角度看,华东地区各省份呈明显的梯度差异,华南地区则广东省一家独大,其余地区各省市贡献度整体差异不大。

完整代码请见文章
数据呈现丨Python绘制桑基图,流量分析不用愁
更多可视化内容请关注公众号 数据Seminar

■网友
sanky主要在形象的展示能量/数据等的流动与分配,其他软件不知道,我是用tableau来做,可以参考这两个教程,非常容易上手
阿达:举个栗子!Tableau技巧(25):学做漂亮的桑基图Sankeydiagram阿达:举个栗子!Tableau技巧(39):巧妙制作分类桑基图


推荐阅读