向图形添加属性(聚类系数)并绘制图形,节点大小与 CC 成正比
Add attribute (clustering coefficient) to graph and plot graph, with node size proportional to CC
我有一个图表:
from networkx.generators.random_graphs import *
from networkx.algorithms.cluster import *
G = fast_gnp_random_graph(20,0.4)
我为每个节点计算聚类:
clust_net = clustering(G)
cluster = []
for a in clust_net:
cluster.append(clust_net[a])
这会产生一个数组。然后我创建一个字典将聚类系数链接到节点:
node_cluster = dict(zip(G.nodes(), cluster))
我如何使用它来制作 node_size 依赖于聚类系数的图表?
您可以为 nx.draw()
使用 node_size
关键字参数。这需要一个值列表,用于缩放图中的节点。
你也可以稍微简化你的代码,因为现在,当你计算node_cluster
时,它和clustering(G)
的结构完全一样。
下面的示例为图表中的每个节点设置一个属性 'cc'
,然后绘制图表,根据该属性的值按比例缩放节点大小。
import networkx as nx
G = nx.fast_gnp_random_graph(20,0.4)
nx.set_node_attributes(G, nx.clustering(G), "cc")
nx.draw(G,
node_size=[G.nodes[x]['cc']*1000 for x in G.nodes],
with_labels=True)
输出:
>>> nx.clustering(G)
{0: 0.4,
1: 0.37777777777777777,
2: 0.3333333333333333,
3: 0.26666666666666666,
4: 0.3787878787878788,
5: 0.34545454545454546,
6: 0.4,
7: 0.1,
8: 0.26666666666666666,
9: 0.4666666666666667,
10: 0.2857142857142857,
11: 0.4444444444444444,
12: 0.3,
13: 0.4,
14: 0.6190476190476191,
15: 0.4,
16: 0.4,
17: 0.3888888888888889,
18: 0.7333333333333333,
19: 0.2857142857142857}
我有一个图表:
from networkx.generators.random_graphs import *
from networkx.algorithms.cluster import *
G = fast_gnp_random_graph(20,0.4)
我为每个节点计算聚类:
clust_net = clustering(G)
cluster = []
for a in clust_net:
cluster.append(clust_net[a])
这会产生一个数组。然后我创建一个字典将聚类系数链接到节点:
node_cluster = dict(zip(G.nodes(), cluster))
我如何使用它来制作 node_size 依赖于聚类系数的图表?
您可以为 nx.draw()
使用 node_size
关键字参数。这需要一个值列表,用于缩放图中的节点。
你也可以稍微简化你的代码,因为现在,当你计算node_cluster
时,它和clustering(G)
的结构完全一样。
下面的示例为图表中的每个节点设置一个属性 'cc'
,然后绘制图表,根据该属性的值按比例缩放节点大小。
import networkx as nx
G = nx.fast_gnp_random_graph(20,0.4)
nx.set_node_attributes(G, nx.clustering(G), "cc")
nx.draw(G,
node_size=[G.nodes[x]['cc']*1000 for x in G.nodes],
with_labels=True)
输出:
>>> nx.clustering(G)
{0: 0.4,
1: 0.37777777777777777,
2: 0.3333333333333333,
3: 0.26666666666666666,
4: 0.3787878787878788,
5: 0.34545454545454546,
6: 0.4,
7: 0.1,
8: 0.26666666666666666,
9: 0.4666666666666667,
10: 0.2857142857142857,
11: 0.4444444444444444,
12: 0.3,
13: 0.4,
14: 0.6190476190476191,
15: 0.4,
16: 0.4,
17: 0.3888888888888889,
18: 0.7333333333333333,
19: 0.2857142857142857}