最近在Tablea的库里,看到很多作者用如下图所示的样式去展现数据,很惊艳,遂下载了工作簿模仿做了一遍。


关于这个图例的说明:
这个图形可以理解为是一个环状条形图,这个图形有一个维度,一个度量和条形图是类似的。图中线条的长短就代表了度量的大小。图一的每一条代表的意义是在每天的不同时刻在谷歌上搜索“How to move on”的人数,图二每一条代表了在不同国家的自杀人数。
环状条形图的好处是,节省空间,美观,并且可读性更好。
接下来我们来一起实现
1、添加计算字段 Radial Field,这个字段等于你要展示的度量,比如图一中代表的是搜索次数,图二中代表的是自杀人数
2、将数据源复制一遍,即每条记录重复一次。这样做的原因是,我们看到的图其实是由两个点相连形成的线条。所以我们需要将数据重复一遍,以产生两组坐标。并且添加计算字段Path,Path的值为0或者1。用以标记两组数据。
3、添加计算字段 Normalised Length=[Inner] + IIF(ATTR([Path])=0,0,SUM([Radial Field])/WINDOW_MAX(SUM([Radial Field])) * ([Outer]-[Inner]))
如果path=0,则
4、添加计算字段命名为Angle,这个字段代表角度Angle=(INDEX()-1) * (1/WINDOW_COUNT(COUNT([Radial Field]))) * 2 * PI()
5、添加两个计算字段,分别命名为X、Y,这两个字段用来生成每一个点的坐标。
X=COS([Angle]) * [Normalised Length]
Y=SIN([Angle]) * [Normalised Length]

6、按如下图所示,拖拽各个字段

7、对X和Y,这两个表计算进行配置,将他们都做如下图所示的两步设置即可


说明:
将Radial Field替换为你要分析的度量,将time替换为你计算的维度,即可生成此图了。赶紧试试吧~
网友评论