我是Networkx的新手,並試圖找出如何使用彈簧佈局,但在節點之間應用不同的邊緣值(即節點之間的不同距離),而不是相同的邊緣值。基本上,我想要一個圖表,它試圖保持一組預定義的節點距離(可能使用彈簧佈局來查找某些局部最小值),而某些邊的權重高於其他邊。但是,Networkx文檔建議所有邊都具有相同的權重。Networkx具有不同邊緣值的彈簧佈局
此外,在繪製spring_layout圖形的簡單情況下,我注意到每次運行結果圖形都會改變構形。有沒有辦法讓相同的圖回來(即設置一些隨機種子)?
import networkx as nx
G = nx.path_graph(5)
nx.draw(G)
重量是否與潛力成反比,是否等同於胡克定律中的力常數?我看到邊的「長度」屬性,並希望儘可能接近我的預設長度(即找到允許我將節點放置爲與預設長度類似的局部最小值)。 – slaw
有一些解釋[這個答案]是怎麼回事(http://stackoverflow.com/questions/28934505/networkx-spring-layout-edge-weights?rq=1)。這些基本上是彈簧常數,但不能保證它在給定位置時處於最小值。使用的確切算法是Fruchterman-Reingold。如果你花一點時間閱讀它,你會很快知道比我更多的東西。 – Joel