D3



->Tutorial:   https://github.com/d3/d3/wiki/Tutorials
->Specification:https://github.com/d3/d3/wiki
->API:https://github.com/d3/d3/blob/master/API.md
->Source code:https://github.com/d3/d3 https://github.com/d3/d3.git

https://d3js.org/
http://d3.decembercafe.org/pages/lessons/1.html


D3.js是一個JavaScript庫,它可以通過數據來操作文檔。D3可以通過使用HTML、SVG和CSS把數據鮮活形象地展現出來。D3嚴格遵循Web標準,因而可以讓你的程序輕鬆兼容現代主流瀏覽器並避免對特定框架的依賴。同時,它提供了強大的可視化組件,可以讓使用者以數據驅動的方式去操作DOM。

D3是個相當獨立的程序庫。它不依賴於特定瀏覽器提供的功能以及其他JavaScript庫。實際上,你甚至可以通過簡單的配置,讓D3脫離瀏覽器而在諸如Node.js這樣的環境中運行起來

D3.js 的所有功能在 JavaScript 中都能實現,它僅僅是一個函數庫而已。D3 所做的事就是減輕你的工作量。

在 D3 中,用於選擇元素的函數有兩個:

Update、Enter、Exit 是 D3 中三個非常重要的概念,它處理的是當選擇集和數據的數量關係不確定的情況。


佈局,可以理解成 “製作常見圖形的函數”,有了它製作各種相對複雜的圖表就方便多了。

D3 與其它很多可視化工具不同,相對來說較底層

[圖片]


佈局的作用是:將不適合用於繪圖的數據轉換成了適合用於繪圖的數據。

佈局的作用解釋成:數據轉換。

爲了根據轉換後的數據 piedata 來作圖,還需要一樣工具:生成器。
SVG 有一個元素,叫做路徑 <path>,是 SVG 中功能最強的元素,它可以表示其它任意的圖形。顧名思義,路徑元素就是通過定義一個段“路徑”,來繪製出各種圖形。但是,路徑是很難計算的,通過佈局轉換後的數據 piedata 仍然很難手動計算得到路徑值。爲我們完成這項任務的,就是生成器。

力導向圖(Force-Directed Graph),是繪圖的一種算法。在二維或三維空間裏配置節點,節點之間用線連接,稱爲連線。各連線的長度幾乎相等,且儘可能不相交。節點和連線都被施加了力的作用,力是根據節點和連線的相對位置計算的。根據力的作用,來計算節點和連線的運動軌跡,並不斷降低它們的能量,最終達到一種能量很低的安定狀態。
力導向圖能表示節點之間的多對多的關係。


發佈了22 篇原創文章 · 獲贊 0 · 訪問量 6846
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章