且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

根据节点值为 networkx 中的节点绘制不同的颜色

更新时间:2023-01-28 12:20:15

import networkx as nx
import numpy as np
import matplotlib.pyplot as plt

G = nx.Graph()
G.add_edges_from(
    [('A', 'B'), ('A', 'C'), ('D', 'B'), ('E', 'C'), ('E', 'F'),
     ('B', 'H'), ('B', 'G'), ('B', 'F'), ('C', 'G')])

val_map = {'A': 1.0,
           'D': 0.5714285714285714,
           'H': 0.0}

values = [val_map.get(node, 0.25) for node in G.nodes()]

nx.draw(G, cmap=plt.get_cmap('viridis'), node_color=values, with_labels=True, font_color='white')
plt.show()

收益

values 中的数字与 G.nodes() 中的节点相关联.也就是说,values 中的第一个数字与 G.nodes() 中的第一个节点相关联,第二个类似,依此类推.

The numbers in values are associated with the nodes in G.nodes(). That is to say, the first number in values is associated with the first node in G.nodes(), and similarly for the second, and so on.