數據可視化,我應從何開啟?
我喜歡數據,并將它廣為人知。
如果您最近和我參加聚會,我在您耳邊說的都是有關數據可視化工具或者最近使用的酷R包,對此我在這向您表示歉意。
如果您和我玩范特西游戲,歡迎您來到圖表世界,這里有很多的圖表。
不要為越來越頻繁地聽到下面的問題感到驚訝:“Nick,我想走向數據分析和數據可視化,我應該從哪里開始?
不幸的是,沒有一個***的答案適合所有的人–每一個人的需求不同且人們已經知道的東西相差很大。但令我高興的是一件關于最近科技/教育/商業環境事情:
來自不同職業道路和背景的聰明人都對自己說:“我需要從數據中得到更多”。
但是,在很多初學者溝通后,發現了的共性。很明顯,這些共性不是適合每一個人的:
一個老練的工程師會嘲笑共性上說的***時間學習Java腳本或者Python。
早已知道D3.js 的人會疑惑選擇哪一個可視化工具?或者疑惑怎么樣將數據驅動轉換應用***的3D中?
這些適合想進一步了解接近數據可視化的學術科學家、學校老師、研究咨詢師、項目經理、失業快樂族或者MBA畢業生……。
如果符合你,我認為你應該開始于從“無編碼”有計劃地學習到“愛編碼”。
無編碼
首先,如果你對excel一無所知,這是值得去做的。嚴肅地告訴你至少得學會透視表,聽起來有些差勁,但是Excel能做很多超乎人們想象的事情。如果你善于嘗試,Excel甚至能做出很多漂亮的圖表。
如果你已經有一些數據,僅僅想用一個好的工具來探索可視化或者輸出更多引人注目的圖表。Tableau 就很流行、功能驚人,它有免費的公共版和一個十分昂貴費用的付費版,
不過如果你是學生就可以享受到免費版。它一般會在網上,或者論文上以靜態圖表形式發布,也可以傳送到Instagram上或者以墻圖輸出。在它的官網上可以找到很多模板,激發你的靈感。
遺憾地是,將要探討的另一個工具–Infoactive,可惜已經下架了,但沒關系,Tableau吸收了Infoative所有優點。這個意味著Tableau很有可能是未來公認的好工具。我將牽頭一本免費的書,它是Infoactive團隊帶領下涉及數據可視化設計工具的背景資料,下面談論的任何工具:
數據+設計
一個簡單有關準備和可視化信息的說明介紹
簡單編碼
如果要選擇一款獨立的程序語言來操作單機數據,我會選擇R語言。因為R語言是免費的,且支持大量的在線開發加載有用的***基礎語言程序包,并且有大量的免費資源學習如何運用它。在這些資源中–我極力推薦Coursera課程:
數據科學家證書|課程
約翰霍普金斯大學驗證通過的數據科學專業化專家成為數據科學家自由談論……
它們可能會抹殺一個真正的初學者,但是課程能帶你走出一條重要數據科學項目和想法的路線,通過所有的方式探索數據分析(它涵蓋了有用的R包,例如ggplot,一個十分受歡迎的可視化工具)的交互性,通過Shiny和數據故事發布在網頁上。
R是我最常用來處理小型快速的分析和數據可視化工具–如果有一個數據(數據量大、不易于可視化)Excel處理不了,R最適合快速探索。
“是的,你可能要學些一些SQL”,另外一個快速入門的語言–SQL,與R相比(實際上,這已經超出了蘋果和蘋果的比較),SQL是一門比較有針對性的語言:
如果你希望在數據庫中用任何工具或者語言集成數據,這將是一個很好的機會讓你有學習SQL的興趣。
愛編碼
通常,在網頁上看到一個美好的交互式可視化界面,都會浮現一個問題“我們要從何學起?”。我著迷于這個創新的領域(點擊這可以看更多深入的調查)。
不幸地是,如果你喜歡這些作品:
一個機器學習的可視化介紹
讓我們重新審視73英尺高的邊界,提出了我們的建議,看看我們是怎樣地提高直覺。明顯地……
……它可以令你沮喪的發現還有多少東西需要自己學習。反復的實踐以求得“《紐約時報》一樣好”是一個艱難的目標,值得但是困難。
幸運的是,這里有很多幫助資源。
交互式的作品后面的邏輯庫,和很多在網頁上運行的數據可視化作品都是Mike Bostock創作的D3.js。D3.js是一個很好的工具去學習作品網頁發布和交互式。
博斯托克(Bostock)的網站是一個有關金礦的例子和教程網站(你不需要筋疲力竭地從邏輯庫的創建者學起……)。
我也推薦Murry創建的網頁版交互式數據可視化,你可以從 O’Reilly 那購買或者網上在線免費使用:
網頁交互式數據可視化
這是一個關于非程序員的編程數據可視化的書。如果你是一個擁有視覺技能的藝術家或圖形設計師,但沒有從事數據或代碼工作的先驗經驗,這本書適合你。如果你是一個擁有大量數據的記者或研究人員,但沒有數據可視化或代碼的先驗工作,這本書也適合你。
在線版本很好–你可以跟著書本本身編寫代碼腳本,運行它并拿你的輸出結果和模板比較。Murray 還特別為初學者量身定制,這個網站能很好的引導初學者從HTML/CSS和Javascript基礎到深入學習相對難的D3。
D3的地理空間可視化是一個值得一提的長處。D3擅長創造很多不同效果的地圖,如果這是你的專業領域,這里可以獲得不錯的專用教程:
我以前讓地圖教程介紹了如何用D3和topojson做一個基本的地圖;現在是時候讓它覆蓋……
D3很難操作,但也有工具能降低難度,我建議使用最基礎的D3而不是復雜的繪圖程序,如果你人覺得棘手,那使用Plot.ly會更實際。
如果你要學***的程序語言,那Python是最適合。它功能強大目的性強,很受歡迎。
我發現Python是一種極易上手且多用途的編程語言。但實際上,如果你要做的是探索和可視化數據,它會讓你覺得吃力:例如Youtube就是用Python開發的……代碼有一百萬行。如果你想了解Python,Code Academy 課程是一個短且有趣的語言介紹。
***,和前面介紹的D3.js , Javascript or ggplot ,R一樣, Python也有很多資料庫。最值得推薦的是,Seaborn(建立在一個年長受歡迎的庫,matplotlib)和Bokeh很有可能是***的,但是這是一個快速發展和提升的領域。Seaborn and Bokeh 的網站包括畫廊展示你用這些工具創建的各種各樣的可視化作品。
啊!太多太多!祝您愉快–如果你創造了一些有趣的東西,請聯系我:在Twitter上@uptownnickbrown或者發我的郵箱nick@quanticle.co