举个栗子!Tableau 技巧(239):学做平滑曲线图

published: 2023-05-08

我们经常用折线图来分析数据趋势,不少数据粉希望折线图可以再美观一些,比如变成曲线。

虽然目前 Tableau 折线图还不支持曲线。那么,有没有办法可以为折线增加曲度,让它看上去更平滑呢?答案是肯定的,今天我们就来试试看吧!


本期《举个栗子》,我们要给大家分享的 Tableau 技巧是:学做平滑曲线图。

为方便学习,栗子使用自拟的简单数据源(如下图),来实现平滑曲线图。掌握栗子方法后,数据粉可尝试使用自己的数据源。

原数据(如左图)为简单的年份-利润对照表,我们会使用此数据做一个2009-2019年利润变化趋势图,但如果想实现平滑曲线图,需要先对数据进行处理。

新增一列 Point(如右图),将每个 Year 的值复制为 100 份,并给 Point 赋值1-100,以示例数据源为例,处理前为 11 行数据,处理后应变为1100行数据,即 11 年x 100 行。

具体步骤如下:

1.创建计算字段

打开 Tableau Desktop,连接栗子数据源,新建工作表。右键单击“数据”窗格空白处,在下拉菜单中选择:创建计算字段。依次创建如下计算字段:

➤ 计算字段:锚点,键入函数:

IF FIRST()=0 THEN MAX([Profit]) ELSE ZN(LOOKUP(MAX([Profit]),-1)) END

➤ 计算字段:辅助字段,键入函数:

(([Point]-1)*0.12)-6

➤ 计算字段:平滑曲线,键入函数:

[锚点]+((1/(1+EXP(-ATTR([辅助字段]))))*(MAX([Profit])-[锚点]))

创建好计算字段后,将字段“Year”设置为:离散,将字段“辅助字段”转换为:维度。

2.创建视图

将“Year”、“辅助字段”拖放至列,将“平滑曲线”拖放至行;将“标记”卡的标记类型改成:线。将视图设置:适合-适合宽度/整个视图,得到如下工作表;

右键单击行上的“平滑曲线”胶囊,在下拉菜单中将计算依据调整为:Year。

此时,可以看到视图中的折线已经变成了平滑的曲线。

接下来,调整视图中线的颜色,数轴(右键单击平滑曲线轴-编辑轴-取消勾选包括零),大小,并简化网格线格式等,得到如下效果图:

也可以在行功能区再添加一个“平滑曲线字段”,将标记类型设置为“区域”,设置双轴,并同步轴,达到如下效果:

3.添加标签

如果想直观的在图中呈现每年利润情况,还可以通过以下步骤添加标签:选中标记类型为“线”的“标记”卡,将字段“Year”、“Profit”拖放至其标签中;

单击标签按钮,进入编辑标签窗口,对展示内容进行编辑;

即可得到如下带标签的效果图:

Tips:若标签并未按照每年一个进行展示,在标签标记位置进行如下设置即可。

栗子 Tips

细心的数据粉应该能发现,构建平滑曲线图的原理其实很简单,每个点之间其实依然是使用直线相连,只要点足够多,并且点与点之间的数值接近,“看上去”它就是平滑曲线。即使不使用上述方法,我们手动构建足够多的数值相近的点,也能直接做出平滑曲线图。

栗子方法中,“锚点”、“辅助字段”、“平滑曲线”三个计算字段的作用,是帮助我们将补数这个步骤自动化,节省很多造数的时间。

今天的 Tableau 技巧,你 Get 到了吗?


更多相关信息,请访问专题页: 可视化数据分析工具和软件