Tableau 从入门到坟头蹦迪

【TableauViz-搬运】在Tableau中制作箭头径向条形

2020-04-03  本文已影响0人  Charles_DT

本文搬运自国外tableau大神原创文章Toan Hoang:知名Tableau大神,数据可视化自由职业者和Tableau Magic的创始人,萨尔萨舞教练,钢琴演奏者,技术爱好者和程序员。

清明假期前的搬运,大神发布的第三篇文章,让你的条形图变化起来~

在2016年9月,大佬写了一篇关于Tableau 环形图的教程,里面讲述了如何一步一步地创建一个环形图。令他特别惊喜的是,这篇教程在他的Tableau 博客中访问量第一,同时在他的所有博客中阅读量第三。然后他说他有个萨尔萨舞的博客,有成千上万的读者balabala(此处省略装13文字)。在他最近的网页设计搜集中,他发现了一个类似他在Tableau中制作过的环形图的图表——箭头径向条形图。

适用场景:径向条形图的使用场景与条形图类似,用来对比不同维度之间数量的差异,当然,此图适合装13使用~

好了,闲话少叙,打开你的Tableau吧~

最终效果

数据

我们即将使用一个非常简单的数据集,下载链接已为你准备好: HERE

计算字段

我们将创建一个Path(数据桶)对象:

这个数据桶将允许我们使用表计算去创建1-271之间的额外数据点

小贴士:我们使用数据桶来使数据密集化,来让我们有更多的数据点。请确保检查已勾选显示丢失的值选项

我们将创建如下计算字段:
Index:用来显示单个数据点

(INDEX()-1) * 2

WC_PI:用来表示PI的值

WINDOW_MAX(MAX(PI()))

WC_Start:用来表示每条线

WINDOW_MAX(MAX([Start]))

WC_Percentage:用来表示每个条形跟最大值之间的百分比

WINDOW_MAX(MAX([Percentage]))

X:绘制X轴点

IF [Index] < 270 THEN
SIN([Index] * [WC_Percentage] * [WC_PI]/180) * [WC_Start]
ELSEIF [Index] > 270 THEN
SIN((540 - [Index]) * [WC_Percentage] * [WC_PI] / 180) * ([WC_Start] + 1)
ELSE
SIN(([Index] * [WC_Percentage] + 3) * [WC_PI]/180) * ([WC_Start] + 0.5)
END

Y:绘制Y轴点,类似X,只需把SIN换成COS即可

IF [Index] < 270 THEN
COS([Index] * [WC_Percentage] * [WC_PI]/180) * [WC_Start]
ELSEIF [Index] > 270 THEN
COS((540 - [Index]) * [WC_Percentage] * [WC_PI] / 180) * ([WC_Start] + 1)
ELSE
COS(([Index] * [WC_Percentage] + 3) * [WC_PI]/180) * ([WC_Start] + 0.5)
END

Y2:创建一个小圆圈用来放置标签

[WC_Start] + 0.5

以上就是全部的计算字段了,下面我们来创建工作表吧~

工作表

拖动计算字段到工作表中:

你应该看到如下效果~


大致形状已经出来啦

现在,让我们做一些润色:

最后,我们做一些有个性的调整:

最后

条形图的变种有很多,相信你如果深入使用Tableau的话,可以做出更多符合你需求同时又能装13的条形图,加油~
PS:Tableau小白搬运,欢迎关注,一起学习,一起交流。欢迎关注Tableau交流问答群~

上一篇 下一篇

猜你喜欢

热点阅读