2012-07-19 56 views
1

是否有一個JavaScript庫在瀏覽器中生成一致的圖形繪圖(例如圖論式樣圖)?通過一致性,我的意思是給定一組輸入(即節點和邊的配置),它產生一個獨特的圖(相同的方向和相同的節點位置)。一致的圖形繪製

+2

哪個Javascript庫*不*生成一致的圖形圖紙?我錯過了什麼嗎? – meetamit 2012-07-19 19:49:57

+0

@meetamit,http://www.graphdracula.net/,看着這個例子,如果你點擊'重繪'按鈕(大概輸入是相同的),它會給你不同的圖形。使用Javascript繪圖對我來說是新的,但我使用過的其他一些工具(例如Mathematica)並不一致。 – skyork 2012-07-19 20:14:54

回答

4

大多數圖形佈局算法(除了像網格佈局或Reingold-Tilford樹佈局這樣的完全確定性算法)都使用某種隨機初始化。由於無法在Javascript中明確設置隨機數生成器的種子,因此很難將圖佈局算法強制爲完全確定性的。您最好的選擇是使用Javascript中的現有庫,它可以繪製圖形(如d3.js),並將調用替換爲Math.random,類似於純粹的基於Javascript的隨機數生成器,您可以爲其明確設置種子。然後將種子設置爲相同的值,應確保每次運行算法時都爲同一圖形生成相同的佈局。

Javascript隨機數發生器的實現可以發現hereherehere

+0

你打我這個答案 - +1 – tucuxi 2012-07-19 20:13:43

+0

我可以推薦https://github.com/BrianRamsay/Randomizer – tucuxi 2012-07-19 20:14:17

+0

謝謝,我已經添加到我的答案。 – 2012-07-20 09:38:54