我想使用 NetworkX 为图中的一些节点着色
您好,我正在使用 NetworkX 生成节点网格,如下
import networkx as nx
s = 10
G = nx.grid_graph(dim=[s,s])
nodes = list(G.nodes)
edges = list(G.edges)
p = []
for i in range(0, s):
for j in range(0, s):
p.append([i,j])
for i in range(0, len(nodes)):
G.nodes[nodes[i]]['pos'] = p[i]
pos = {}
for i in range(0, len(nodes)):
pos[nodes[i]] = p[i]
nx.draw(G, pos)
这是一张图片:
但是,我不知道如何使用不同的颜色(如红色或绿色)为这些节点的子集着色。例如,假设我想将左下角着色为红色,将右上角着色为红色和绿色,我怎样才能选出这些点并告诉 python 这样做呢?有没有办法减少节点的大小?
另外,有没有比使用 networkx 更好的方法来做到这一点?我的最终目标是绘制不同颜色的点阵。
我是编程新手,所以我希望这是一个明确的问题。