举个栗子!Tableau 技巧(279):用铅笔柱形图对比数据
之前,我们分享过 🌰:简单三步美化你的条形图,使用自定义形状和双轴来改变条形图末端形状,让图表更美观。
有数据粉咨询:如何创建像铅笔一样的柱形图呢(如下图)?很显然,这个需求无法用之前的栗子方法实现,因为它的每一个柱形末端形状都不一样(柱子越长,末端的尖角度数越小)。
那么,如何在 Tableau 中具体实现呢?今天的栗子,一睹为快吧!
本期《举个栗子》,我们要给大家分享的 Tableau 技巧是:用铅笔柱形图对比数据。
为方便学习,栗子使用 Tableau 自带的“Sample - Superstore”数据源。掌握栗子方法后,数据粉可尝试使用其他数据源。
具体步骤如下:
1.创建参数
打开 Tableau Desktop,连接 Tableau 自带的 Sample - Superstore 数据源,新建工作表。
首先,创建 2 个参数:
➤ 参数:@Point Factor
➤ 参数:@Spacing Factor
2.创建计算字段
➤ 计算字段:Path,键入函数
IF [Ship Mode] = "First Class" THEN 1 ELSE 5 END
接着,右键单击该字段,下拉菜单选择:创建-数据桶。数据桶:Path (bin),在弹窗中将其大小设为:1
➤ 计算字段:Index,键入函数
INDEX()
➤ 计算字段:TC_Sales,键入函数
WINDOW_SUM(SUM([Sales]))
➤ 计算字段:TC_Max Sales,键入函数
WINDOW_MAX(SUM([Sales]))
➤ 计算字段:TC_Rank,键入函数
RANK_UNIQUE([TC_Sales])
➤ 计算字段:TC_Middle,键入函数
INT(WINDOW_MEDIAN([TC_Rank]))
➤ 计算字段:TC_Order,键入函数
IF [TC_Rank] = 1 THEN
[TC_Middle]
ELSEIF [TC_Rank]%2 <> 0 THEN
[TC_Middle]+([TC_Rank]/2)-0.5
ELSE
[TC_Middle]-([TC_Rank]/2)
END
➤ 计算字段:X,键入函数
IF [Index] = 1 OR [Index] = 5 THEN
0
ELSEIF [Index] = 3 THEN
[TC_Sales]+([TC_Max Sales]/[@Point Factor])
ELSE
[TC_Sales]
END
➤ 计算字段:Y,键入函数
IF [Index] = 1 OR [Index] = 2 THEN
1
ELSEIF [Index] = 3 THEN
0.5
ELSE
0
END + ([TC_Order]*[@Spacing Factor])
➤ 计算字段:Label Rank,键入函数
IF [Index] = 3 THEN
[TC_Rank]
ELSE
NULL
END
➤ 计算字段:Label Sales,键入函数
IF [Index] = 3 THEN
[TC_Sales]
ELSE
NULL
END
➤ 计算字段:Label Sub-Category,键入函数
IF [Index] = 3 THEN
WINDOW_MAX(MAX([Sub-Category]))
ELSE
NULL
END
3.创建视图
将“标记”卡的标记类型改为:多边形。将字段“Sub-Category”拖放至其详细信息中,将字段“Path (bin))”拖放至列,再右键单击该胶囊,下拉菜单勾选:显示缺失值。然后,将该胶囊拖放至“标记”卡的路径中。
将字段“x”拖放至列,将字段“y”拖放至行。分别右键单击这两个胶囊,下拉菜单都选择:计算依据-Path (bin))。
右键单击行上的“y”胶囊,下拉菜单选择:编辑表计算,在弹窗中如下设置:
完成设置后,视图中的图表如下:
接着,将字段“TC_Sales”拖放至“标记”卡的颜色标记中,按需设置颜色。在列上复制一个“x”胶囊,将“x2”“标记”卡的标记类型改为:线。
将字段“Label Rank”拖放至该“标记”卡的标签中,右击单击该胶囊,下拉菜单选择:计算依据-Path (bin))。
再次右击单击该胶囊,下拉菜单选择:编辑表计算。弹窗中,嵌套计算选:TC_Rank,特定维度选:Sub-Category。
将字段“Label Sales”和“Label Sub-Category”拖放至该“标记”卡的标签中,然后分别右键单击这两个胶囊,下拉菜单都选择:计算依据-Path (bin)),按需设置标签调整标签格式。
右键单击列上的“x”胶囊,下拉菜单勾选:双轴。再次右键单该胶囊,下拉菜单选择:计算依据-Path (bin))。
最后,再调整格式,隐藏轴标题,隐藏行分隔符和列分隔符,隐藏网格线,删除工具提示即可。
今天的 Tableau 技巧,你 Get 到了吗?