Python 在networkx中基于节点度定义节点大小时出现错误结果

Python 在networkx中基于节点度定义节点大小时出现错误结果,python,python-2.7,networkx,Python,Python 2.7,Networkx,我知道以前也有人问过类似的问题,但我的问题有点复杂。我试图根据networkx图的输出程度来定义其节点大小,但结果有些混乱。这是我的密码: nodes = pd.read_csv('nodes_1984.csv') edges = pd.read_csv('edges_1984.csv') nodes.head() 结果是,图中我的节点的大小与这些节点的度值不对应,尽管我对包含上述节点度值的列表(d_out_val)进行了相应的排序。 你能告诉我这个问题能解决什么吗 Passnx。绘制nod

我知道以前也有人问过类似的问题,但我的问题有点复杂。我试图根据networkx图的输出程度来定义其节点大小,但结果有些混乱。这是我的密码:

nodes = pd.read_csv('nodes_1984.csv')
edges = pd.read_csv('edges_1984.csv')
nodes.head()

结果是,图中我的节点的大小与这些节点的度值不对应,尽管我对包含上述节点度值的列表(d_out_val)进行了相应的排序。
你能告诉我这个问题能解决什么吗

Pass
nx。绘制
nodelist
参数,在该参数中提供节点的排序列表。所以不是

nx.draw(network, pos, with_labels=True, node_size=[s * 100 for s in d_out_val], node_color="w")
您将有:

nx.draw(network, pos, nodelist=sorted(network.nodes()), with_labels=True, node_size=[s * 100 for s in d_out_val], node_color="w")
如果不提供
nodelist
参数,networkx将使用
network.nodes()
(与
节点大小列表不同,它不会排序)

nx.draw(network, pos, nodelist=sorted(network.nodes()), with_labels=True, node_size=[s * 100 for s in d_out_val], node_color="w")