R语言南丁格尔玫瑰图 南丁格尔玫瑰图的作用_数据可视化


在工作中,如果遇到需要计算总费用或金额的各个部分构成比例的情况,我们可以使用饼图,直接显示各个组成部分及所占比例。

R语言南丁格尔玫瑰图 南丁格尔玫瑰图的作用_数据可视化_02

但是,如果因为组成部分较多而导致饼图分区多且密集,图表就变得不易观察。

能不能等角度分布(占比小的项不会被忽略),又能体现各个项的大小(突出占比大的项)?同时还能对比不同类型(多角度分析)的差异?

有一种图表可以满足上面的这些需求,它就是南丁格尔玫瑰图。

南丁格尔玫瑰图Nightingale rose diagram是弗罗伦斯·南丁格尔所发明的,又名为极区图,是一种圆形的直方图。
出于对资料统计的结果会不受人重视的忧虑,她创造出这种色彩缤纷的图表形式,让数据能够更加让人印象深刻。

如下图,把三种类型的产品(电子,家具,办公)在一年十二个月的销售额进行了汇总对比分析:

  • 即能看到每种类型产品在一年12个月销售额的占比,销售额大的会突出出来;
  • 也能看到每个月三种产品销售额的不同;
  • 同时也能反映整一年的总体情况,即红色的面积比蓝色的面积大,表示电子产品一年的销售比家具产品的高。

R语言南丁格尔玫瑰图 南丁格尔玫瑰图的作用_数据_03

那么,在Tableau里如何制作南丁格尔玫瑰图?


本期《举个栗子》,阿达要给大家分享的Tableau技巧是:学做南丁格尔玫瑰图。

具体步骤如下:

01

准备下图类型的数据结构

R语言南丁格尔玫瑰图 南丁格尔玫瑰图的作用_R语言南丁格尔玫瑰图_04


02

创建Path字段的数据桶

将数据源导入Tableau Desktop,首先创建Path字段的数据桶。

R语言南丁格尔玫瑰图 南丁格尔玫瑰图的作用_数据分析_05


03

创建八个计算字段

创建计算字段INDEX(),命名为Edges, 用于计算角度。

R语言南丁格尔玫瑰图 南丁格尔玫瑰图的作用_R语言南丁格尔玫瑰图_06

创建计算字段([Edges]-1)(2PI()/WINDOW_MAX([Edges])),命名为Angle。

R语言南丁格尔玫瑰图 南丁格尔玫瑰图的作用_R语言南丁格尔玫瑰图_07

创建计算字段INDEX(),命名为Count, 用于计算片数。

R语言南丁格尔玫瑰图 南丁格尔玫瑰图的作用_数据可视化_08

创建计算字段WINDOW_MAX([Count]),命名为Number of Slices。

R语言南丁格尔玫瑰图 南丁格尔玫瑰图的作用_字段_09

创建计算字段SQRT(AVG([Sales])/PI()),命名为Radius,其中AVG的可是实际情况修改。

R语言南丁格尔玫瑰图 南丁格尔玫瑰图的作用_字段_10

创建计算字段INDEX(),命名为Index,用于计算X和Y轴。

R语言南丁格尔玫瑰图 南丁格尔玫瑰图的作用_数据_11

创建计算字段
IIF([Index]=1 OR[Index]=WINDOW_MAX([Index]),0,WINDOW_MAX([Radius])
*COS([Angle]+((([Index]-2)WINDOW_MAX(2PI())/([Number of Slices]*99)))))
命名为X

R语言南丁格尔玫瑰图 南丁格尔玫瑰图的作用_数据_12

创建计算字段
IIF([Index]=1 OR[Index]=WINDOW_MAX([Index]),0,WINDOW_MAX([Radius])
*SIN([Angle]+((([Index]-2)WINDOW_MAX(2PI())/([Number of Slices]*99)))))
命名为Y

R语言南丁格尔玫瑰图 南丁格尔玫瑰图的作用_数据_13

此时,你应该完成8个计算字段创建,如下图:

R语言南丁格尔玫瑰图 南丁格尔玫瑰图的作用_字段_14


04

开始制图

将Data拖入颜色并显示成月份,将Product Category拖入详细信息并转换成颜色,并将图形选择为:多边形,再将Path(数据桶)托入行。

R语言南丁格尔玫瑰图 南丁格尔玫瑰图的作用_R语言南丁格尔玫瑰图_15


右键Path(数据桶),显示缺失值。

R语言南丁格尔玫瑰图 南丁格尔玫瑰图的作用_数据_16

然后将Path(数据桶),拖入标记卡的路径中,然后将X拖入到列,Y拖入到行。

R语言南丁格尔玫瑰图 南丁格尔玫瑰图的作用_字段_17

05
修改XY计算依据
为什么什么都没有呢,这里需要修改X,Y的计算依据,比如X的计算依据配置如下:

R语言南丁格尔玫瑰图 南丁格尔玫瑰图的作用_数据可视化_18


R语言南丁格尔玫瑰图 南丁格尔玫瑰图的作用_R语言南丁格尔玫瑰图_19


对Y进行同样的计算依据配置,完成后,玫瑰花图就出来了。

R语言南丁格尔玫瑰图 南丁格尔玫瑰图的作用_数据_20


06

调整Product Category字段排序

为什么上图只有两个颜色呢?其实,是因为大的图将小的图覆盖了。这时,只需要调整Product Category字段的排序就好。

R语言南丁格尔玫瑰图 南丁格尔玫瑰图的作用_字段_21


07

调整格式和颜色

最后,进行格式和配色的调整,也可多月份的排序做调整,玫瑰图就做出来了。

R语言南丁格尔玫瑰图 南丁格尔玫瑰图的作用_字段_22

你还可以添加更多的文字信息(比如占比),调整更多的格式设置(比如花边),让你的图表有更多的可读性。

R语言南丁格尔玫瑰图 南丁格尔玫瑰图的作用_字段_23


文章部分信息来源于网络,如有侵权请告知