把數據變吸睛的動畫!用 Flourish 製作全球疫情數據的 Bar chart race

這篇文章記錄了什麼是 Flourish如何取得全球各國的疫情數據透過 Python 進行數據清理、並使用 Flourish 來呈現一個吸睛的資料賽跑圖(Bar chart race)!

如果不會寫程式也沒關係!
只要準備好適當的數據,也能直接到 Flourish 上面進行資料視覺化喔!

話不多說,點擊左下方的播放鍵,讓我們先來看看成果長什麼樣子吧!


  1. 關於資料視覺化工具 Flourish
    1. Flourish 是什麼?
    2. Flourish 是免費的嗎?
  2. 關於全球疫情數據
    1. 數據是從哪來的?
    2. 如何清理數據?
  3. 進入 Flourish 資料視覺化的世界
    1. 1. 前往 Flourish 免費註冊會員
    2. 2. 創建 Bar chart race 圖表
    3. 3. 匯入資料
    4. 4. 預覽 Bar chart race 並調整設定
      1. Setup
      2. Color
      3. 最重要的 Timeline & animation
      4. Header
    5. 5. 為你的故事畫龍點睛:Captions
  4. 作品成果展示
  5. 參考資料

關於資料視覺化工具 Flourish

Flourish 是什麼?

Flourish 是一個提供資料視覺化服務的平台,類似 Tableau 那樣,完全不需要寫任何程式碼,只要準備好資料,任何人都可以輕鬆創建很酷、很生動的圖表。

因為它的方便性,使用者人數也快速成長,截至 2022 年 2 月已經有將近 103 萬使用者,產出的圖表也已創造了超過 218 億的瀏覽次數,目前也已經被知名的視覺設計工具 Canva 收購

Flourish 是免費的嗎?

免費註冊!免費製作數量無上限的圖表!

這方面真的是很吸引人,不論是要製作作品集,或是數據分析師想要製作很吸睛的圖表給老闆主管看,免費方案就已經非常足夠。


關於全球疫情數據

數據是從哪來的?

我所使用的數據來自於約翰·霍普金斯大學(Johns Hopkins University)在 Github 上的每日疫情數據,由於每日都會產生一個 CSV 檔,要一次下載有點麻煩,因此我使用了一個可以一鍵下載 Github 指定資料夾的 下載工具,只要輸入資料夾的網址,就可以一次把上千個的 CSV 檔下載下來

另外,為了能夠篩選六大洲,所以我也在 Our World In Data 找到國家名+六大洲分類的資料

最後,要讓 Bar 上面能顯示國旗,需要各國家國旗圖片的 URL,這邊我透過 Country Flags 這個網站來取得。

到這邊我就收集完我所需要的三種數據

  1. 全球疫情確診資料
  2. 全球六大洲分類
  3. 各國國旗圖片

如何清理數據?

我清理的過程主要有三個重點

  1. 讓欄位能符合 Bar chart race 所需
  2. 維持各國名稱的一致性
  3. 整合前述的三種資料來源

實際過程我就不在這邊贅述,完整程式碼可以參考我 Github 的 ipynb 檔


進入 Flourish 資料視覺化的世界

1. 前往 Flourish 免費註冊會員

可以使用 Google 帳號快速註冊

2. 創建 Bar chart race 圖表

註冊完畢就會進入到個人頁面,點擊下圖所示的藍色按鍵「+ New visualisation

往下滑找到 Bar chart race 並點擊(下圖的左1)

這邊可以看一下 Bar chart race 的文件說明

3. 匯入資料

接著上傳已經整理好的資料,並設定欄位,讓 Flourish 能知道各欄位所代表的意思

基本上 Flourish 很聰明,Value 的部分都會自動準確地辨識出是哪些欄位,每個欄位的資料型態(數字123 / 文字 ABC)也都會自動設定好

4. 預覽 Bar chart race 並調整設定

剛剛是在 Data 頁籤上進行操作,現在可以點擊「Preview」來預覽圖表

右側欄有很多設定,這邊就可以依照自己的喜好和需求來做調整,我這邊只展示幾個我有特別調整的部分

Setup

  • No. bars:我這邊設定圖表只顯示 10 個資料
  • Spacing (%):每個 bar 之間留白的空間,越高則相鄰的 bar 之間隔越遠

Color

  • Color mode:我這邊選擇「By category」,因為我想要有六大洲的篩選檢視功能
  • Palette:Flourish 1,如果 Color mode 是選擇「By bar」,可以開啟「Extension」去指定某國家的顏色,例如下方文字框中的「China: red」就是把中國 bar 設定為紅色
  • Bar opacity:Bar 的透明度,越低就越透明

最重要的 Timeline & animation

  • Time duration:
    • 這是一個最影響視覺享受的設定,如果資料時間長度很長,卻只設定很短的時間,那圖表動畫就會看起來很亂
    • 像我的資料是從 2020.01.21 到 2022.11.11,所以設定整體動畫時間為 300 秒我覺得比較剛好
  • Play on load:決定動畫是否為自動播放,我是選擇不開啟,讓使用者自行點擊播放鍵
  • Loop timeline:決定是否自動重播動畫,我個人比較喜歡有明顯播放完畢的感覺,所以我開啟自動播放之外,同時也調高「Pause before loop」的等待時間
  • Title:設定圖表標題,可開啟「Styling」來調整標題大小、粗體、擺放位置等
  • LOGO / IMAGE:可放上自己的代表圖片、頭像或任何圖片,並設定圖片的超連結,當然也是一樣可以調整大小和擺放位置

5. 為你的故事畫龍點睛:Captions

只有單純的 bar 在賽跑,看久了觀眾可能會稍嫌無趣,因此我們可以在某些時間點加上彈出的敘事框,來說明在現階段發生了什麼重大事件,很適合放上數據分析的個人 Insight 洞察

讓我們先暫時離開 Preview 畫面,回到 Data 頁籤的 Captions 設定

可以看到我在不同的起始點,設定了一些我從圖表中所看到的現象

接著回到 Preview 畫面,大概等一兩秒就會看到圖表正中央更新了 Captions 的敘事框,善用這個方法來豐富你想述說的圖表故事吧!


作品成果展示

最後讓我們再來看一次作品的成果吧!

Made with Flourish

作品連結:https://public.flourish.studio/visualisation/11812383/


參考資料

廣告

發表迴響

在下方填入你的資料或按右方圖示以社群網站登入:

WordPress.com 標誌

您的留言將使用 WordPress.com 帳號。 登出 /  變更 )

Twitter picture

您的留言將使用 Twitter 帳號。 登出 /  變更 )

Facebook照片

您的留言將使用 Facebook 帳號。 登出 /  變更 )

連結到 %s