0
我知道之前曾問過類似的問題,但我的問題有點複雜。我試圖根據他們的出錯程度來定義networkx圖的節點大小,但是會弄得一團糟。這裏是我的代碼:根據網絡中的節點度定義節點大小時出現錯誤結果
nodes = pd.read_csv('nodes_1984.csv')
edges = pd.read_csv('edges_1984.csv')
nodes.head()
this how my data containing nodes looks like (click)
network=nx.DiGraph()
for row in nodes.iterrows():
network.add_node(row[1][0], Label=row[1][1], region=row[1][2], pos=(row[1][4], row[1][3]))
for row in edges.iterrows():
network.add_edge(row[1][0],row[1][1], weight=row[1][3])
pos=nx.get_node_attributes(network,'pos')
d_out = network.out_degree() #dictionary of {nodes:out_degree_values}
d_out_val = [] #creating a list which contains values of out_degree of nodes and sorting them in the same order as they were in the d_out dict
for w in sorted(d_out.keys()):
d_out_val.append(d_out[w])
d_out_val
plt.figure(figsize=(32,28)) #plotting my network
nx.draw(network, pos, with_labels=True, node_size=[s * 100 for s in d_out_val], node_color="w")
plt.show()
的結果是,我的圖中的節點尺寸不符合這些節點的出度值雖然我把盛度列表(d_out_val)上面的節點的值。 你能告訴我們這個問題可以解決嗎?