用Tableau画Sigmoid Bump Chart

一直特别喜欢曲线图,所以一直特别喜欢研究怎么画曲线图,Sigmoid Bump Chart我看国外大神也有叫Smooth Bump Chart(平滑凹凸图),其实就是用画桑基图的Sigmoid曲线来画Bump Chart图。

来比较一下,同样的数据,你喜欢哪种图呢?

Bump Chart
Sigmoid Bump Chart

Bump Chart的画法很简单,网上文章很多,大家可以自行搜索。

下面我们来研究一下Sigmoid Bump Chart的制作方法。首先,需要复习前面两篇文章,用Tableau画桑基图-方法一(表计算)用Tableau画桑基图-方法二(联接表),原理在方法一里讲过了,我们用方法二的联接表的形式来做。

数据准备,百度链接: https://pan.baidu.com/s/1uZD2Rfy1a2FC0gE77HdE1Q 提取码: afw6

一共两个表,“数据排名表”是历年每种颜色车型的受欢迎程度的排名,“path联接表”用来创建笛卡尔积数据。

Tableau引入数据,通过link字段内联接两张表

内联接两张表

新建一组字段

【T】=([Path]-25)/4

【Sigmoid】=1/(1+EXP(1)^-[T])

如果你看过前面的文章,就会知道这两个字段是用来建立sigmoid曲线图的

再建第二组字段

【Rank 1】=[Rank]

【Rank 2】=IFNULL(WINDOW_MIN([Rank 2 Setup]),MIN([Rank]))

【Rank 2 Setup】=IF MIN([Path]) = 49 THEN LOOKUP(MIN([Rank]),1) END

【Curve】=MIN([Rank 1])+(([Rank 2] - MIN([Rank 1]))*MIN([Sigmoid]))

与前面的文章有一定不同,需要四个字段来确定曲线的高度和起始点,【Rank 2 Setup】的作用是找到下一年的rank排名,比如other这个颜色,2000年排名第三,2001年排名第六,如果你有心去看表计算的结果【Rank 2 Setup】取到了6这个值,【Rank 2】利用【Rank 2 Setup】取到的值,填满了2000年的49行数据。

other
表计算结果

如果你理解了前面的两篇文章,你就会知道现在如果画曲线,都是堆叠在一起的,我们接下来要做的就是把所有曲线,横向拉开(桑基图是纵向拉开),为此要建立一组字段

【Year Order】=[Year] - {MIN([Year])}

这个字段的作用是把年转换成0,1,2,3这样等比数列,就是相较于2000年差了几年

【Path Order】=(49*[Year Order])+[Path] (要转换成维度-连续)

这个字段的作用,就是把曲线全部横向拉开了,2000年是1-49,2001年就是50-98,以此类推

【YearFake】=([PathOrder]/49) + 2000 (要转换成维度-连续)

其实有了【Path Order】就可以建立好Sigmoid Bump Chart了,【YearFake】就是为了直接让轴显示年份

下面就可以建立视图了

把【YearFake】拖到列功能区(【Path Order】也是可以的,可以自己试一下),【Curve】拖到行功能区,【color】拖的标签-颜色,【Year】拖到详细信息,按照下面调整【Curve】的表计算,注意重启间隔的设置,并编辑【Curve】的轴为倒序

rank2
rank2 setup

差不多就是这个效果了

效果

剩下的就是新建一个字段,用来做突出显示年份的圆点

【DualUp】=FLOAT(MIN(IF [Path]=1 THEN [Rank] END))

这个字段就是只显示每年的第一个点,其他点不显示

将【DualUp】拖入行功能区,然后双轴,调整【DualUp】的轴为倒序

最终效果

然后就是美化工作了。

给大家这个Viz的public地址,大家可以下载自行研究一下,他是做了两个双轴https://public.tableau.com/profile/rody.zakovich#!/vizhome/TheUntanglingofColorPopularityamongNewCarsinNorthAmerica/TheUntanglingofColorPopularityforNewCars

大神的原效果

此篇文章已发布到我的公众号:saodisir,有兴趣也可关注一下

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 204,053评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,527评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,779评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,685评论 1 276
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,699评论 5 366
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,609评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,989评论 3 396
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,654评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,890评论 1 298
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,634评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,716评论 1 330
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,394评论 4 319
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,976评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,950评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,191评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 44,849评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,458评论 2 342

推荐阅读更多精彩内容