8
我使用d3 force佈局來構建圖形,然後將節點的位置存儲在數據庫中。如何使用d3力佈局顯示圖形,初始位置已設置且完全不動?
下次我想要顯示圖形時,我從數據庫中讀取位置到節點中,然後啓動力佈局。
這會導致佈局稍微移動。
有沒有我的方式來顯示存儲的節點位置的圖形沒有調用force.start()呢?
我想要的是一個「只讀」模式,以顯示其他人早些時候創建的穩定圖形。
/Hans
我使用d3 force佈局來構建圖形,然後將節點的位置存儲在數據庫中。如何使用d3力佈局顯示圖形,初始位置已設置且完全不動?
下次我想要顯示圖形時,我從數據庫中讀取位置到節點中,然後啓動力佈局。
這會導致佈局稍微移動。
有沒有我的方式來顯示存儲的節點位置的圖形沒有調用force.start()呢?
我想要的是一個「只讀」模式,以顯示其他人早些時候創建的穩定圖形。
/Hans
我建議您閱讀documentation of the force layout。這真的很好。
如上所述,您必須爲每個節點設置px
和py
屬性。然後,您可以在每個節點中將屬性fixed
設置爲true
。
這意味着計算force.start()不會有任何影響。
你可以嘗試的另一件事是Alpha值設置爲0,然後開始仿真:
force.alpha(0)
.start()
我不知道這種方法是否有效。如果沒有,發佈一個jsFiddle。
哦,我已經反覆閱讀了文檔,但我只是不夠聰明,不知道我應該使用fixed屬性:-)。 它很好用! 謝謝! – hansbrattberg
這是正常的,不用擔心。我很高興它有幫助。如果解決了您的問題,您可以接受答案。 –