您的位置:首頁>文化>正文

獨家|我的資料視覺化之旅—從天文學家到資料視覺化專家養成記

翻譯:韓霜

校對:丁楠雅

編輯:蝴蝶

本文共5373字, 建議大家閱讀18分鐘

本文內容為從天文學家到資料視覺化專家養成記。

我經常收到很多人的郵件, 詢問我步入資料視覺化道路的各種問題。 在我將自己的故事寫了九遍之後, 我想在博客上公開這個故事也許會更輕鬆一些。 這樣, 我也能夠敘述得更加詳盡, 甚至添加一些圖片。

從天文學家到資料科學家(我學習R的時候)再到自學而成的資料視覺化設計師, 這一過程中最大部分時間我都在做大量的資料視覺化工作, 我還花了很多業餘時間學習網路語言和D3,

閱讀了最佳實踐的相關書籍, 參與線上資料視覺化社區, 並在各種學術會議或見面會中闡釋自己對於這一課題的熱愛。 現在, 我在為Adyen工作的同時, 也是一個資料視覺化的兼職自由工作者。

至於全部的細節, 先看一下我在幾年前做的各種表格的圖片, 再繼續閱讀………

2015 – 2011| 以天文工作者的身份開始

高中畢業之後我進入萊頓大學學習天文學。 我不僅對這一領域有興趣, 同時對數學和物理也有極大熱情。 大學第一年, 我修了一門C++課程, 這也是我的程式設計入門課程。 (在我設計Neopets寵物網頁之前的幾年我確實學過簡單的HTML 和CSS, 但是到那時我基本都忘乾淨了)。 我非常喜歡程式設計帶來的挑戰:通過設置變數, 迴圈, 使用if-else語句就可以做很多事情, 比如提供你的生日, 就可以計算出那天是星期幾。 但是儘管我十分喜歡那門課程(或許並不是特指C++), 在之後的三年我並沒有做任何程式設計相關的事情。

在我大學最後一年做畢業設計的時候, 這也是我真正意義上的第一個研究課題。

為了準備畢設, 我整個大三都在學習IDL, 一門天文學領域中(過去)常常使用的程式設計語言(而且沒有在其他領域使用......)。 很久之後我發現, IDL和R語言很相似, 我非常喜歡它, 掌握的比C++好。 在接下來的半年以及隨後兩年的天文學碩士課程學習中, 我選擇做理論研究, 所以更多的使用IDL。 為了完成碩士論文, 我甚至整天都在程式設計, 通過模擬分析結果。 我也學了一點SQL, 因為我需要它從模型資料庫中獲取正確資料。 但別理解錯了, 這沒有讓我成為程式設計開發方面的專家, IDL只是一個資料分析工具。 我並不會編寫APP或者工具, 我只會寫一些可以分析資料並生成資料和圖像(就像現在使用R一樣)的腳本。

我找出了我曾經為了本科和碩士畢業而寫的3篇論文。

下面幾張圖片就來自論文中的一些結果。 具體內容記不清楚了, 但是上面那些圖的最右邊一張圖中的那些圓圈和下面一排圖最右側的兩個散佈圖是我自己分析生成的結果, 其他的圖都是採用標準方式顯示一系列特定資料。

2012| 成為顧問/資料科學家

我覺得自己並不想繼續深造攻讀PhD。 儘管我很喜歡做研究, 但是我十分痛恨寫論文。 同時我也想接觸一些比較具象的、更多樣化的事物, 讓世界上更多的人知道我做的事情。 所以我開始找工作。 當時Deloitte顧問團隊剛剛在他們的商業智慧部門成立了一個分析小組, 我因此也進入分析小組, 找到了一份很適合自己的工作。

在Deloitte, 我的工作還是分析大量的資料,

但現在這些資料都是關於人們, 或是他們購買的物品, 或是他們的房屋貸款, 全都是和生活十分貼近的東西。 因為不能再使用IDL了, 我不得不學習新的資料分析工具。 在我在Deloitte工作的第一年學了6種不同的語言, 主要原因是我必須要面向客戶需要, 比如QlikView自帶的SQL版本, SAS(這不是我最喜歡的), VBA(甚至更糟糕), 以及後來學的R。

R以及RStudio立刻就成為了我不可或缺的工具。 它和IDL有相似的設計原理。 你可以逐行運行代碼而不需要編譯整個腳本或一次性運行全部代碼。 我發現逐行運行代碼很方便調試或者理解其他人寫的代碼。 並且R本就是用來作為資料分析工具的。 它有大量的工具包來幫助你實現一些功能, 從大量資料的準備、文本挖掘、畫圖(使用ggplot2)到更多複雜抽象的功能比如計算地球上兩個地點之間的弧度距離, 或者是一個連接Google 趨勢的API。

想要掌握ggplot2的“連結”思想的要領需要花費一些時間,它可以通過不同程度的堆疊不同選項來定義圖表的外觀。但是現在回顧起來,就可以理解得更深刻,並且它為我們提供了更多的可能。你需要多參考stackOverflow 來找到實現某些具體功能的例子。另一方面,你也可以將生成的圖像保存為PDF並上傳到Illustrator來做一些最後的調整。然而,我也是在3年後一次偶然的機會之後才開始這麼做的。

上下兩個圖中是我第一年使用R做的圖表。我認為這些圖表都值得保存在我的個人電腦上,哈哈。當然我也做了上百張巨簡單也巨醜的圖,這些是不會保存的。橫條圖、折線、散佈圖等,這些都可以説明我們更好的理解資料。

2013 | 意識到d3的存在

2013年二月,我去三藩市灣區參加了有關於資料科學的Strata 會議。在那裡,我加入了一個”d3入門” 的討論群組。之前從沒有聽說過d3,我立刻就被吸引了。回家之後,我花了接下來一個星期的時間試圖建立我自己的可以在不同變數之間切換並可根據滑鼠點擊進行變換的互動式散佈圖。是的,我花了整整一周的休息時間從零開始去建立這個圖。因為我完全不懂JavaScript,對HTML和CSS的掌握也有限。同時,掌握d3的邏輯鏈和輸入+更新+退出的思維方式也是另一大難點(我認為我至少花了一年的時間才完全理解)。這一塊學起來很艱難,儘管很長時間裡我只能取得一小點進步,但是我還是為d3可以創造的無限可能而癡迷不已。

經過那一次的嚴酷考驗,我已經學會了如何從已有的例子開始嘗試,不斷調整使之適用於自己的資料。有時候,僅僅是把自己的資料顯示出來就十分複雜。我有時候會被很簡單的問題困住,因為不知道到底哪裡出了錯。最後我意識到,在JavaScript中物件的嵌套數組在複製到新的變數中仍保持可連接狀態……抓狂。

接下來一年我沒有頻繁使用d3。工作中為了快速完成任務有太多需要學習的東西。之後發現R 曲線圖比較快。

2014 | 發現自己的興趣

這樣持續學習一直到2014年 11月。期間,在大工程當中,因為有足夠多的時間去創建(或者調整一些其他我喜歡的東西),我也做了幾個基於d3的可視作品。比如適用於我經常使用的自組織映射演算法的六角形熱圖,以及建立熱門購買物品之間關係的視覺化網路圖和關聯分析的結果(這個視覺化作品主要基於 Raphaël Velt 的工作) 。但是我仍然認為自己是一個資料科學家。問題是,我不確定我是否像之前那樣喜歡這個工作。為了將預測模型的準確度提高1%,我覺得挫敗感多於成就感。

但是在2014年11月,我又一次參加了Strata會議,在巴賽隆納。我仍然記得當時我內心有些茫然,不確定接下來一年自己的研究方向。之後,我聽了Mike Freeman的演講。他演講的題目是“資料視覺化專家”。我突然獲得了靈感:“這也算獨立的工作嗎?我們可以成為資料視覺化專家?”那一刻,我知道我又重拾激情。這個超棒的演講通過故事來傳遞複雜資料與觀點,我相信對你同樣有很大的幫助:)

在接下來的一個月我把自己所有的休息時間,晚上,週末,都花在了如何轉化我在Deloitte做的複雜圖表上,將電話品牌變換的輻射圖表轉化成基於故事的視覺化圖像。下面我慢慢解釋如何從圖表中抽象出觀點。我把它寄給Mike Freeman,詢問了他的意見。他人超級好,對此也十分感興趣,併發了一分讚不絕口的推送,這條推送甚至引起了d3的創始人Mike Bostock 的關注(我還保存了他轉發我的視覺化作品的截圖,那時我在我的房間裡蹦了起來)。

我受到了極大的鼓舞。因此我開始大量閱讀關於最佳實踐的書籍,最重要的是,我創建了許多自己的工程,有關於top2000的歌曲,有關於太陽系外行星,有關於太陽系。這都是在我的私人時間做的,但不要緊,它已經變成了我的興趣,我是在享受。

2015 |成為資料視覺化設計師

工作時間我和我的導師跟老闆進行了一次長談,關於我想要專攻資料視覺化。幸運的是,他們都非常支持,他們甚至向其他經理推薦我去做需要資料視覺化的專案。當然這類工作並不是一直有的,所以我仍然在做資料分析的工作,但是隨著時間推移,我慢慢開始做更多有意思的項目(例如,國家狀況),這些項目通常都涉及到用d3為客戶資料創建視覺化結果。

業餘時間,我繼續做自己的項目來學習。同時我也開始寫博客。2014年,我已經在博客中創建了一些簡單的東西,分享了一些東西,但並沒有多少實質上的內容。直到現在!我想了一個名字:visual cinnamon,開始加入一些我自己做的項目,分享我遇到的困難,遇到的有趣的問題,以及最終的結果。我創建了一些我自己學到的很具體的內容(通常是d3相關的)的教程,希望可以幫到更多人。2015年3月,我甚至把免費博客轉移到了WordPress上面。這樣我可以發佈更多的內容,比如代表作品集和一些列舉了我最喜歡的資料視覺化資源以供學習。

我還參加了兩個競賽。這是一個得到清洗過的資料和一個視覺化主題的好方法。可以讓你不斷豐富你的作品集,也能讓你看到自己與其他人的差距(雖然也有一些不參加比賽的原因,也許這家公司想要不付款就獲得一大堆可供挑選的視覺化作品,所以要小心)。第一名的作品是提供給Information is Beautiful 關於食物中毒的靜態視覺化圖像(很可惜這是他們做的最後一次挑戰了),第二名作品是提供給Visualizing.org和世界銀行的關於中東城鎮化的互動式圖像。

2016 | 被雇傭為資料視覺化設計師

2015年12月,由於一些和資料視覺化領域無關的原因,我換了一份工作,加入AdYen成為全職的資料視覺化設計師。他們為我安排了資料分析的崗位,但是我告訴他們我換工作的條件就是想專攻資料視覺化。他們看了我的網站後十分喜歡上面的內容,最終同意我可以加入資料視覺化工作部分(所以說,我花時間更新我的網站最後還是有回報的)!他們已經開始使用d3為客戶做儀錶盤並想做進一步優化。

我在AdYen的大部分時間,要麼是更新舊的儀錶盤,要麼是創建新的。調查最終使用者的需求,瞭解可以獲得的資料,做出(粗略的)設計,有時也會將其部署到AdYen的環境中(2-3個前端同事實現了我的大部分儀錶盤設計)。

正是在這裡,我開始理解我更多的是一個原型設計者。我對網頁開發的瞭解程度並不足以讓我和負責網頁開發的同事並肩。但是在資料視覺化方面,在他們一籌莫展的時候,我可以設計並獨立建立實例。所以幾個月以後,我不再負責切實在 AdYen環境中部署內容,並更多的專注於設計和提出新思路。

2016 | 與其他人更加深入的交流

2016年是我發現我真的喜歡表現出我對資料視覺化的熱愛的年份(雖然仍然超級緊張,呵呵)。四月份的OpenVis是我第一次參加國際會議,但是到了2016年底,我居然剛在墨爾本CSS會議發言完畢並飛回家!(這是我在2016年初沒有想到的)。這兩個會議我都申請了演講資格,但我認為(並不確定)是我的博客上分享的項目經歷,還有更重要的是教程,使得OpenVis社團給了我這次機會:)當然,有好的想法是最重要的,即使你沒有博客。對於與會者的選擇是完全匿名的,不論是誰,想法才是被挑選的依據。這是菜鳥級的人參與進來的好方法。

2016年,我開始與shirley Wu 合作,他是一個來自三藩市data sketches的優秀資料視覺化設計師, 在資料向量上,每月針對相同的話題創建更加深入的資料視覺化,並寫出資料收集、準備、構思以及程式設計實現的過程。在我寫這篇文章時候,我們已經做了9個月,這期間我收穫了太多。不僅是技術上的,也有思想上的創新。如果你真的想要學習資料視覺化,那沒有什麼可以打敗你。

2017 | 成為自由工作者

在AdYen 做了一年儀錶盤之後,我發現我作為顧問正在失去多樣性。每幾個星期到一個不同的行業,負責一個完全不同的客戶,處理不同的資料和問題。因此我決定至少用一年時間做一些事情實現那些在我腦中盤亙很久的想法。所以我從2017年1月開始成為資料視覺化方面的自由工作者。

然而,由於我在AdYen仍然有很多想要探索的內容,同時我也不確定我所偏愛的專案是否有足夠好的市場,所以我採用兼職的工作方式。在AdYen工作3天,剩下兩天(如果算上週末有還有另外兩天)做自由工作者。

順帶一提,關於我“偏愛的專案類型”,指的是更加富有創造性的資料視覺化。我決定不再做有關儀錶盤設計或構建的工作,因為我已經做得夠多了。

至於現在,一切都進展順利。忽略合同管理帶來的煩惱,我的工作十分有趣,並且再次多樣化。但是由於我僅做了3個月的自由工作者,我希望一年之後可以進一步擴展最後一個部分。

總結

好啦,這就是關於我的資料視覺化之路的一個足夠長篇的陳述了,我是什麼時候以及如何學習掌握工具來構建視覺化作品的,還有每個階段的一些(令人尷尬的)圖表。以及我抓住的一些看似可怕或者浪費時間卻受益匪淺的機會。希望我的故事能對你們深入研究資料視覺化領域有所啟發,如果這是你想要的東西的話。亦或瞭解他人是如何一步一步摸索就已經很棒了,對我而言,這並不是一條清晰的路徑,努力與熱情——這是每個人都有的東西——使我最終達到我現在這個位置:以資料視覺化作為主職工作。

譯者介紹

韓霜,墨爾本大學生物醫學工程碩士在讀學生。對基因組研究以及深度學習有濃厚興趣,不斷嘗試通過深度學習系統處理大量基因資料,希望在精准醫療領域有所建樹。資料派翻譯組志願者。

或者是一個連接Google 趨勢的API。

想要掌握ggplot2的“連結”思想的要領需要花費一些時間,它可以通過不同程度的堆疊不同選項來定義圖表的外觀。但是現在回顧起來,就可以理解得更深刻,並且它為我們提供了更多的可能。你需要多參考stackOverflow 來找到實現某些具體功能的例子。另一方面,你也可以將生成的圖像保存為PDF並上傳到Illustrator來做一些最後的調整。然而,我也是在3年後一次偶然的機會之後才開始這麼做的。

上下兩個圖中是我第一年使用R做的圖表。我認為這些圖表都值得保存在我的個人電腦上,哈哈。當然我也做了上百張巨簡單也巨醜的圖,這些是不會保存的。橫條圖、折線、散佈圖等,這些都可以説明我們更好的理解資料。

2013 | 意識到d3的存在

2013年二月,我去三藩市灣區參加了有關於資料科學的Strata 會議。在那裡,我加入了一個”d3入門” 的討論群組。之前從沒有聽說過d3,我立刻就被吸引了。回家之後,我花了接下來一個星期的時間試圖建立我自己的可以在不同變數之間切換並可根據滑鼠點擊進行變換的互動式散佈圖。是的,我花了整整一周的休息時間從零開始去建立這個圖。因為我完全不懂JavaScript,對HTML和CSS的掌握也有限。同時,掌握d3的邏輯鏈和輸入+更新+退出的思維方式也是另一大難點(我認為我至少花了一年的時間才完全理解)。這一塊學起來很艱難,儘管很長時間裡我只能取得一小點進步,但是我還是為d3可以創造的無限可能而癡迷不已。

經過那一次的嚴酷考驗,我已經學會了如何從已有的例子開始嘗試,不斷調整使之適用於自己的資料。有時候,僅僅是把自己的資料顯示出來就十分複雜。我有時候會被很簡單的問題困住,因為不知道到底哪裡出了錯。最後我意識到,在JavaScript中物件的嵌套數組在複製到新的變數中仍保持可連接狀態……抓狂。

接下來一年我沒有頻繁使用d3。工作中為了快速完成任務有太多需要學習的東西。之後發現R 曲線圖比較快。

2014 | 發現自己的興趣

這樣持續學習一直到2014年 11月。期間,在大工程當中,因為有足夠多的時間去創建(或者調整一些其他我喜歡的東西),我也做了幾個基於d3的可視作品。比如適用於我經常使用的自組織映射演算法的六角形熱圖,以及建立熱門購買物品之間關係的視覺化網路圖和關聯分析的結果(這個視覺化作品主要基於 Raphaël Velt 的工作) 。但是我仍然認為自己是一個資料科學家。問題是,我不確定我是否像之前那樣喜歡這個工作。為了將預測模型的準確度提高1%,我覺得挫敗感多於成就感。

但是在2014年11月,我又一次參加了Strata會議,在巴賽隆納。我仍然記得當時我內心有些茫然,不確定接下來一年自己的研究方向。之後,我聽了Mike Freeman的演講。他演講的題目是“資料視覺化專家”。我突然獲得了靈感:“這也算獨立的工作嗎?我們可以成為資料視覺化專家?”那一刻,我知道我又重拾激情。這個超棒的演講通過故事來傳遞複雜資料與觀點,我相信對你同樣有很大的幫助:)

在接下來的一個月我把自己所有的休息時間,晚上,週末,都花在了如何轉化我在Deloitte做的複雜圖表上,將電話品牌變換的輻射圖表轉化成基於故事的視覺化圖像。下面我慢慢解釋如何從圖表中抽象出觀點。我把它寄給Mike Freeman,詢問了他的意見。他人超級好,對此也十分感興趣,併發了一分讚不絕口的推送,這條推送甚至引起了d3的創始人Mike Bostock 的關注(我還保存了他轉發我的視覺化作品的截圖,那時我在我的房間裡蹦了起來)。

我受到了極大的鼓舞。因此我開始大量閱讀關於最佳實踐的書籍,最重要的是,我創建了許多自己的工程,有關於top2000的歌曲,有關於太陽系外行星,有關於太陽系。這都是在我的私人時間做的,但不要緊,它已經變成了我的興趣,我是在享受。

2015 |成為資料視覺化設計師

工作時間我和我的導師跟老闆進行了一次長談,關於我想要專攻資料視覺化。幸運的是,他們都非常支持,他們甚至向其他經理推薦我去做需要資料視覺化的專案。當然這類工作並不是一直有的,所以我仍然在做資料分析的工作,但是隨著時間推移,我慢慢開始做更多有意思的項目(例如,國家狀況),這些項目通常都涉及到用d3為客戶資料創建視覺化結果。

業餘時間,我繼續做自己的項目來學習。同時我也開始寫博客。2014年,我已經在博客中創建了一些簡單的東西,分享了一些東西,但並沒有多少實質上的內容。直到現在!我想了一個名字:visual cinnamon,開始加入一些我自己做的項目,分享我遇到的困難,遇到的有趣的問題,以及最終的結果。我創建了一些我自己學到的很具體的內容(通常是d3相關的)的教程,希望可以幫到更多人。2015年3月,我甚至把免費博客轉移到了WordPress上面。這樣我可以發佈更多的內容,比如代表作品集和一些列舉了我最喜歡的資料視覺化資源以供學習。

我還參加了兩個競賽。這是一個得到清洗過的資料和一個視覺化主題的好方法。可以讓你不斷豐富你的作品集,也能讓你看到自己與其他人的差距(雖然也有一些不參加比賽的原因,也許這家公司想要不付款就獲得一大堆可供挑選的視覺化作品,所以要小心)。第一名的作品是提供給Information is Beautiful 關於食物中毒的靜態視覺化圖像(很可惜這是他們做的最後一次挑戰了),第二名作品是提供給Visualizing.org和世界銀行的關於中東城鎮化的互動式圖像。

2016 | 被雇傭為資料視覺化設計師

2015年12月,由於一些和資料視覺化領域無關的原因,我換了一份工作,加入AdYen成為全職的資料視覺化設計師。他們為我安排了資料分析的崗位,但是我告訴他們我換工作的條件就是想專攻資料視覺化。他們看了我的網站後十分喜歡上面的內容,最終同意我可以加入資料視覺化工作部分(所以說,我花時間更新我的網站最後還是有回報的)!他們已經開始使用d3為客戶做儀錶盤並想做進一步優化。

我在AdYen的大部分時間,要麼是更新舊的儀錶盤,要麼是創建新的。調查最終使用者的需求,瞭解可以獲得的資料,做出(粗略的)設計,有時也會將其部署到AdYen的環境中(2-3個前端同事實現了我的大部分儀錶盤設計)。

正是在這裡,我開始理解我更多的是一個原型設計者。我對網頁開發的瞭解程度並不足以讓我和負責網頁開發的同事並肩。但是在資料視覺化方面,在他們一籌莫展的時候,我可以設計並獨立建立實例。所以幾個月以後,我不再負責切實在 AdYen環境中部署內容,並更多的專注於設計和提出新思路。

2016 | 與其他人更加深入的交流

2016年是我發現我真的喜歡表現出我對資料視覺化的熱愛的年份(雖然仍然超級緊張,呵呵)。四月份的OpenVis是我第一次參加國際會議,但是到了2016年底,我居然剛在墨爾本CSS會議發言完畢並飛回家!(這是我在2016年初沒有想到的)。這兩個會議我都申請了演講資格,但我認為(並不確定)是我的博客上分享的項目經歷,還有更重要的是教程,使得OpenVis社團給了我這次機會:)當然,有好的想法是最重要的,即使你沒有博客。對於與會者的選擇是完全匿名的,不論是誰,想法才是被挑選的依據。這是菜鳥級的人參與進來的好方法。

2016年,我開始與shirley Wu 合作,他是一個來自三藩市data sketches的優秀資料視覺化設計師, 在資料向量上,每月針對相同的話題創建更加深入的資料視覺化,並寫出資料收集、準備、構思以及程式設計實現的過程。在我寫這篇文章時候,我們已經做了9個月,這期間我收穫了太多。不僅是技術上的,也有思想上的創新。如果你真的想要學習資料視覺化,那沒有什麼可以打敗你。

2017 | 成為自由工作者

在AdYen 做了一年儀錶盤之後,我發現我作為顧問正在失去多樣性。每幾個星期到一個不同的行業,負責一個完全不同的客戶,處理不同的資料和問題。因此我決定至少用一年時間做一些事情實現那些在我腦中盤亙很久的想法。所以我從2017年1月開始成為資料視覺化方面的自由工作者。

然而,由於我在AdYen仍然有很多想要探索的內容,同時我也不確定我所偏愛的專案是否有足夠好的市場,所以我採用兼職的工作方式。在AdYen工作3天,剩下兩天(如果算上週末有還有另外兩天)做自由工作者。

順帶一提,關於我“偏愛的專案類型”,指的是更加富有創造性的資料視覺化。我決定不再做有關儀錶盤設計或構建的工作,因為我已經做得夠多了。

至於現在,一切都進展順利。忽略合同管理帶來的煩惱,我的工作十分有趣,並且再次多樣化。但是由於我僅做了3個月的自由工作者,我希望一年之後可以進一步擴展最後一個部分。

總結

好啦,這就是關於我的資料視覺化之路的一個足夠長篇的陳述了,我是什麼時候以及如何學習掌握工具來構建視覺化作品的,還有每個階段的一些(令人尷尬的)圖表。以及我抓住的一些看似可怕或者浪費時間卻受益匪淺的機會。希望我的故事能對你們深入研究資料視覺化領域有所啟發,如果這是你想要的東西的話。亦或瞭解他人是如何一步一步摸索就已經很棒了,對我而言,這並不是一條清晰的路徑,努力與熱情——這是每個人都有的東西——使我最終達到我現在這個位置:以資料視覺化作為主職工作。

譯者介紹

韓霜,墨爾本大學生物醫學工程碩士在讀學生。對基因組研究以及深度學習有濃厚興趣,不斷嘗試通過深度學習系統處理大量基因資料,希望在精准醫療領域有所建樹。資料派翻譯組志願者。

Next Article
喜欢就按个赞吧!!!
点击关闭提示