前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >利用Tableau绘制辐射堆叠图,炫酷易上手

利用Tableau绘制辐射堆叠图,炫酷易上手

作者头像
朱小五
发布2020-04-16 09:35:55
1.5K0
发布2020-04-16 09:35:55
举报
文章被收录于专栏:凹凸玩数据

前言

我在不久前见到过这样的图,我就想可以写一篇关于如何在Tableau中创建辐射堆叠图,这是个基于合计百分比运算的堆叠图,但整体的形状是圆形的,作图的整个过程十分有趣,我希望你可以享受它。

备注:辐射堆叠图其实是数据可视化中的非常规类型,有时候是客户要求的,在正式将可视化部署于生产环境前,务必找一个最优的选择。

02

数据准备

我们先使用Tableau读取自带的“示例 - 超市”数据源,当然也可以通过如下

链接下载:

https://pan.baidu.com/s/1QvmoV8gocp6MPkdqOUpzaQ

提取码:rjdm

读取完成后,右键数据源并点击“编辑数据源”,新增如下数据源(model.xlsx)并做关联

因为没有可以用于关联的字段所以你会看到一个报错,这时选中关联的圈圈处,点击“添加新的链接字句”,选中“创建链接计算”,进入新建字段界面并输入1,同样在右边也选中“创建链接计算”,确保使用的是内链接,最终效果见下图

备注:我们需要额外的记录因为我们需要绘制线条并使用数据密度来得到更多的点,对于“数据密度”的进一步讲解在这篇文章中。

03

计算字段

数据全部读取完成之后,我们需要

创建如下数据桶和计算字段

路径(数据桶)

选中字段“路径”,右键创建数据桶

在数据桶编辑界面中,将“数据桶大小”设置为1,并点击“确定”

索引 INDEX()-1

表计算_步长 3.6/12

表计算_日期部分

WINDOW_MAX(MAX(DATEPART('month', [订单日期])))-1

表计算_细分销售额

WINDOW_SUM(SUM([销售额]))/2

备注:因为我们要使用数据密度,这样会使我们的值翻倍,所以为了最终的正确值,我们需要除以2

表计算_细分总销售额

WINDOW_SUM(SUM([销售额]))/2

表计算_细分销售额百分比

[表计算_细分销售额]/[表计算_细分总销售额]

表计算_起始点

[表计算_日期部分]*[表计算_步长]*100

表计算_前一百分比

RUNNING_SUM([表计算_细分销售额百分比])-[表计算_细分销售额百分比]

X

IF [索引] <= 100 THEN

SIN(RADIANS(([索引]*[表计算_步长])+[表计算_起始点]))*(1+[表计算_前一百分比])

ELSE

SIN(RADIANS(((201-[索引])*[表计算_步长])+[表计算_起始点]))*(1+[表计算_细分销售额百分比]+[表计算_前一百分比])

END

Y

IF [索引] <= 100 THEN

COS(RADIANS(([索引]*[表计算_步长])+[表计算_起始点]))*(1+[表计算_前一百分比])

ELSE

COS(RADIANS(((201-[索引])*[表计算_步长])+[表计算_起始点]))*(1+[表计算_细分销售额百分比]+[表计算_前一百分比])

END

04

建立工作表

●拖“订单日期”至“筛选器”,并选中“2018”

●将“标记栏”中的类型改为“多边形”

●拖“路径(数据桶)”至“列”

♢ 在胶囊处右键并确保“显示缺失值”是选中状态

♢ 将胶囊拖至“标记栏”中的“路径”

●拖“细分”至“标记栏”中的“颜色”

●拖“订单日期”至“标记栏”中的“详细信息”

♢ 在胶囊处右键,并将其转化为“离散”与“月”

●拖“X”至“列”

♢ 在胶囊处右键,将计算依据改为“路径(数据桶)”

●拖“Y”至“行”

♢ 在胶囊处右键,将计算依据改为“路径(数据桶)”

全部操作完成后会看到如下图形:

看上去还不错,但这不是我们需要的最终效果,我们现在需要调整一下表计算

●右击“X”并选择“编辑表计算”

♢ 在“嵌套计算”处,将计算依据改为“表计算_前一百分比”

♢ 在“计算依据”处,将计算依据改为“细分”

♢ 在“嵌套计算”处,将计算依据改为“表计算_细分销售额”

♢ 在“计算依据”处,将计算依据改为“特定维度”,选中“细分”与“路径(数据桶)”,并把“细分”拖到顶部

♢ 所在级别选为“最深”,重新启动间隔选为“细分”

♢ 在“嵌套计算”处,将计算依据改为“表计算_细分总销售额”

♢ 在“计算依据”处,将计算依据改为“特定维度”,选中“细分”与“路径(数据桶)”,并把“细分”拖到顶部

♢ 所在级别选为“最深”,重新启动间隔选为“无”

♢ 对Y也重复上述操作

●右击“Y”并选择“编辑表计算”

♢ 在“嵌套计算”处,将计算依据改为“表计算_前一百分比”

♢ 在“计算依据”处,将计算依据改为“细分”

♢ 在“嵌套计算”处,将计算依据改为“表计算_细分销售额”

♢ 在“计算依据”处,将计算依据改为“特定维度”,选中“细分”与“路径(数据桶)”,并把“细分”拖到顶部

♢ 所在级别选为“最深”,重新启动间隔选为“细分”

♢ 在“嵌套计算”处,将计算依据改为“表计算_细分总销售额”

♢ 在“计算依据”处,将计算依据改为“特定维度”,选中“细分”与“路径(数据桶)”,并把“细分”拖到顶部

♢ 所在级别选为“最深”,重新启动间隔选为“无”

一切顺利后,就可看到如下图形:

现在我们做可视化的最后一步的调整

● 隐藏轴

● 隐藏零值线

● 隐藏网络线

● 增加工具提示

● 增加白色边框

现在稍微花点时间来研究下表计算的原理,主要是如下几个方面:

● 销售额计算基于每个月的每个细分

● 总销售额计算基于每个月

● 百分比值基于每个细分

● 最后将他们堆叠在一起

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-04-06,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 凹凸数据 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
对象存储
对象存储(Cloud Object Storage,COS)是由腾讯云推出的无目录层次结构、无数据格式限制,可容纳海量数据且支持 HTTP/HTTPS 协议访问的分布式存储服务。腾讯云 COS 的存储桶空间无容量上限,无需分区管理,适用于 CDN 数据分发、数据万象处理或大数据计算与分析的数据湖等多种场景。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档