數(shù)據(jù)可視化作為大數(shù)據(jù)應(yīng)用的一個(gè)分支,隨著大數(shù)據(jù)時(shí)代的到來得到了飛速發(fā)展。各種各樣的開發(fā)庫如雨后春筍般出現(xiàn),單是前端方向就不下百種。D3.js無疑是此中翹楚,是在世界范圍內(nèi)最受廣泛認(rèn)可的前端可視化工具,Github上的排名就是有利的佐證。
為什么D3.js如此受到關(guān)注呢?它有三點(diǎn)特性:高自由性、代碼簡潔、有研究的趣味性。作為一種完全開源的技術(shù),它不追求作圖的速度,有很多為高端開發(fā)者考慮的地方,使其成為了一項(xiàng)“值得深入學(xué)習(xí)”的技術(shù)。繪圖,本身就有很強(qiáng)的趣味性,開發(fā)人員得到的結(jié)果是圖形而不是枯燥的數(shù)字,在學(xué)習(xí)也中不易感到煩悶。
我最早接觸D3是在2013年,距離D3發(fā)布僅僅兩年,是我到日本留學(xué)的第二年。在一門叫做項(xiàng)目演習(xí)的課程上,四人的一組在三個(gè)月內(nèi)需要完成一件作品。我被組長分配的任務(wù)是做一個(gè)在日本地圖上表現(xiàn)農(nóng)產(chǎn)品產(chǎn)量分布的圖表,并添加一些交互行為。當(dāng)時(shí)我對(duì)數(shù)據(jù)可視化幾乎全然不知,完全沒有頭緒用什么工具來做。一個(gè)在設(shè)計(jì)學(xué)方向很資深的老師給了我一本書,日文版的《Visualizing Data》。書中有大量的可視化案例,代碼是用Processing寫的。這位老師建議我看看D3,說是近期的新技術(shù),很有趣。一進(jìn)D3的官網(wǎng)我就被絢麗的圖形吸引了。當(dāng)時(shí)我不知其實(shí)類似的工具還有很多,如果只為完成那件作品,D3絕非最快的方法。但是我很慶幸自己選擇了這種比較復(fù)雜的方法,并且越是學(xué)習(xí)越能感到D3的魅力。
在眾多可視化工具里,我把D3稱為是一項(xiàng)“值得深入學(xué)習(xí)”的技術(shù)。不僅僅因?yàn)镈3有很多優(yōu)點(diǎn),如高自由性、代碼簡潔等。更重要的是,有研究的趣味性,它完美融合了繪圖和編程的樂趣。開發(fā)者不僅是在編碼,也是在做設(shè)計(jì),還是在創(chuàng)造藝術(shù)。
日文里有一個(gè)詞“わかりやすく”,這是一個(gè)副詞,直譯過來就是“簡單易懂地”,后面可以跟“說明、表現(xiàn)什么什么”。但是,雖然意思一樣,日文中這個(gè)詞遠(yuǎn)比翻譯后要親切。在日本,無論是在技術(shù)書、論文報(bào)告,還是商品宣傳中,各行各業(yè),只要是要傳達(dá)給別人某些事情的時(shí)候,都在強(qiáng)調(diào)這個(gè)詞。所以看日文書學(xué)技術(shù),速度遠(yuǎn)比看漢語要快,正是因?yàn)槊總€(gè)作者都在體現(xiàn)這種精神。這也是我在日本的留學(xué)生活中學(xué)到的最大的財(cái)富。
因此,判斷一篇技術(shù)文章、一個(gè)視頻教程好不好,判斷的標(biāo)準(zhǔn)就是它是否足夠簡單。光是專家能看懂不行,光是高手能看懂也不行,要讓初學(xué)者也能輕易看懂才行。如果說一個(gè)作者在文章中不能簡單明確地傳達(dá)某個(gè)知識(shí)點(diǎn),最大的可能性就是他也一知半解。當(dāng)然,這也是人之常情,誰都會(huì)有。
Rapid D3.js恰如其名稱形容的一樣,是一套能快速入門的課程。它有不少為初學(xué)者考慮的細(xì)節(jié),總體來說做到了由易入難,初學(xué)者在學(xué)習(xí)的過程中很少卡帶。視頻的長度大都在5-6分鐘以內(nèi),不容易疲勞。每課都凝縮了一個(gè)知識(shí)點(diǎn),并以很簡短的方式進(jìn)行了講解,沒有冗余,知識(shí)結(jié)構(gòu)也比較完整。可以說是體現(xiàn)了“簡單易懂的精神”的教程,作為沒有D3基礎(chǔ)的學(xué)生很合適。
聲明:CSDN登載此文出于傳遞更多信息之目的,并不意味著贊同其觀點(diǎn)或證實(shí)其描述。