最近因为疫情数据的原因,“网红” 动态柱状图又一次火了起来。
我第一次接触这种 “排名追逐图”是在几年前看Abacaba做的围棋排名,当时就震惊到原来可视化还可以这样做:
![80b67cce3f8778bf461621a3fec09815.gif](https://img-blog.csdnimg.cn/img_convert/80b67cce3f8778bf461621a3fec09815.gif)
其实这么高大上的动态图,Tableau 一样也可以做,先上效果图:除去事先下载整理数据,整个Tableau过程我掐了一下秒表,用了大约120秒的时间:
![5def15ac9ad8ecdeec89d78ecc9f3ae9.gif](https://img-blog.csdnimg.cn/img_convert/5def15ac9ad8ecdeec89d78ecc9f3ae9.gif)
这个要得益于2020最新版Tableau 的 Animation 功能
Step 1: 找数据
我用的新冠确诊数据来源于OurWorldInData.org:
Coronavirus (COVID-19) Cases - Statistics and Researchourworldindata.org![98df5010a0c69e225e97978c8e6fb26e.png](https://img-blog.csdnimg.cn/img_convert/98df5010a0c69e225e97978c8e6fb26e.png)
你的数据至少要有3类:
- 一个Dimension维度. e.g: 【国家名称】 = Country
- 一个Date 时间点. e.g: 【日期-年月日】 = date
- 一个Measure度量. e.g: 【确诊数】= total cases
![8168ca6c52f3830f01292326e7f1e6b3.png](https://img-blog.csdnimg.cn/img_convert/8168ca6c52f3830f01292326e7f1e6b3.png)
Step 2: 做一个stacked bar chart 堆积柱形图
- 将一个Measure度量 (total cases) 拖拽到 Columns 里
- 将一个Dimension维度(Country) 拖拽到Color 颜色
- 将同一个Dimension维度(Country)拖拽到Text 文本
![e0f02893da88530ac73b195f5966cfd4.gif](https://img-blog.csdnimg.cn/img_convert/e0f02893da88530ac73b195f5966cfd4.gif)
Step 3: 做一个Calculated Field 计算字段
e.g: 命名为OurRanking 的 Calculated Field, 其中包含了这个function: 复制粘贴一下,然后把total cases 改成你的数据里的measures的名字
RANK_UNIQUE(SUM( [total_cases] ))
![273bec26ebddf1a17b0e04a8d1548874.png](https://img-blog.csdnimg.cn/img_convert/273bec26ebddf1a17b0e04a8d1548874.png)
把刚创建好的 OurRanking 的 calculated Field 拖拽到Rows, 并且点击这个calculated field, 让其computing using "Country" :
![7fad7f68d63d479095eadff2572d1db1.gif](https://img-blog.csdnimg.cn/img_convert/7fad7f68d63d479095eadff2572d1db1.gif)
最后再把这个calculated field 从 continuous 变成 Discrete :
![149d2a5923fd24e88b7987cee0169f8e.gif](https://img-blog.csdnimg.cn/img_convert/149d2a5923fd24e88b7987cee0169f8e.gif)
Optional: 如果你的数据里Country太多的话, 那么就会导致太多的Color (一个国家一种颜色),所以你可以加一个filter,只选择 total cases 总数前10的国家:
![752d7661ef5d10481e9f1c05a645329a.gif](https://img-blog.csdnimg.cn/img_convert/752d7661ef5d10481e9f1c05a645329a.gif)
Step 4: set up 好时间线
把 date 拖拽到 Pages, 并把格式改为 "Day" - (取决于你想以怎样的时间线“快进”,如果你想以每一年为单位快进,那就把date的格式设置为Year)
![e9ddb16a75ca30c70de5dc8edbdef4f6.gif](https://img-blog.csdnimg.cn/img_convert/e9ddb16a75ca30c70de5dc8edbdef4f6.gif)
Step 5: 开启Animation自动更新
- 点开Format --> Animations 开启Animation的操作页面
- 把Workbook Default 的 Off 变成 On
![866c95d9f035c88ffeb53e87b8c341c2.gif](https://img-blog.csdnimg.cn/img_convert/866c95d9f035c88ffeb53e87b8c341c2.gif)
在Duration里, 自定义customize一下速度 - 这个取决于你想以多快的速度 “快进", 我选的是0.1秒,建议你多试一下不同的速度,达到你想要的效果:
![e1228f6e1928468102befe8f7d7731e5.gif](https://img-blog.csdnimg.cn/img_convert/e1228f6e1928468102befe8f7d7731e5.gif)
在右下方的时间操作栏里, 开启自动更新模式:
![4c64e5934592d081b23f972cc8b49166.gif](https://img-blog.csdnimg.cn/img_convert/4c64e5934592d081b23f972cc8b49166.gif)
注意:
- 红圈中的三个Bar也可以用来改变速度,如果觉得慢的话,就选择最右边的三条线
- 绿圈的show history 不要选
![63d982efc97c7838ed8094f8d65af1cc.png](https://img-blog.csdnimg.cn/img_convert/63d982efc97c7838ed8094f8d65af1cc.png)
Step 6: 让柱状图变得更美观
如果你想改变某一个柱状图的颜色, 在右侧的Filter里直接点你想改变的国家,然后重新选择颜色:
![bef7d4ef995ed9e9cc60783cbd970b16.gif](https://img-blog.csdnimg.cn/img_convert/bef7d4ef995ed9e9cc60783cbd970b16.gif)
如果你想在柱状图加上随时间变化的【数据】:
把 (sum(total_cases)) 加到Label 里:
![3af18ac827c1d5777dd75dd2c3d6489b.png](https://img-blog.csdnimg.cn/img_convert/3af18ac827c1d5777dd75dd2c3d6489b.png)
![4f511a3056648538e79c2571d11b12f6.gif](https://img-blog.csdnimg.cn/img_convert/4f511a3056648538e79c2571d11b12f6.gif)
如果你有更好的方法,也请和我分享 :)