很想写这篇旭日图(Sunburst Chart)的教程,但一直没有提笔。因为在public上搜sunburst,拆解后发现作品中有两种方法,本来想把两种方法研究透彻,分两篇介绍,但是有一种方法一直没研究明白就放弃了,虽然两种方法的原理都差不多,表计算的难易程度差很多,所以就只能介绍下面这种最简单的方法了。
这种较为简单的方法,来源于Toan Hoang大神的tableaumagic网站,属于比较早的一篇文章,因为原文表计算困惑了我好久,所以我对表计算进行了部分微调,以便于理解。
https://tableaumagic.com/sunburst-chart-tutorial/
这里要说的是,如果你看过前面的《用Tableau画圆形热力图》文章就会很快明白这篇文章的原理,那篇文章是画方形(每个方形只需要5个点就可以连在一起),由于每圈的数据比较多,所以多个方形连在一起,给人的感觉就是圆形。
旭日图就不一样了,由于每圈的数据比较少,方形肯定是不能成了,就需要画扇形,画扇形就需要更多的点来连接。
建立数据集
Label,Value Label,Value,Level,Distance,Path,sort
Europe,6000000,0.6,1,2,1,1
Europe,6000000,0.6,1,3,362,1
Asia Pacific,3000000,0.3,1,2,1,2
Asia Pacific,3000000,0.3,1,3,362,2
North America,1000000,0.1,1,2,1,3
North America,1000000,0.1,1,3,362,3
United Kingdom,4000000,0.4,2,3,1,4
United Kingdom,4000000,0.4,2,4,362,4
France,800000,0.08,2,3,1,5
France,800000,0.08,2,4,362,5
Germany,700000,0.07,2,3,1,6
Germany,700000,0.07,2,4,362,6
Spain,500000,0.05,2,3,1,7
Spain,500000,0.05,2,4,362,7
Singapore,1500000,0.15,2,3,1,8
Singapore,1500000,0.15,2,4,362,8
Hong Kong,1000000,0.1,2,3,1,9
Hong Kong,1000000,0.1,2,4,362,9
Japan,5