如何根据度的不同,绘制节点颜色不同的图
时间: 2024-02-28 21:52:44 浏览: 111
可以使用 NetworkX 库中的 draw 函数来绘制节点颜色不同的图。具体步骤如下:
1. 首先,需要获取节点的度信息,可以使用 NetworkX 库中的 degree 函数来获取节点的度。
```python
degree_dict = dict(G.degree())
```
2. 接着,需要为每个节点定义一个颜色,可以根据节点的度信息来为节点定义不同的颜色。例如,可以将度为 0 的节点设为灰色,度为 1 的节点设为黄色,度为 2 的节点设为绿色,度为 3 的节点设为蓝色,度为 4 及以上的节点设为红色。
```python
color_map = []
for node in G.nodes():
degree = degree_dict[node]
if degree == 0:
color_map.append('grey')
elif degree == 1:
color_map.append('yellow')
elif degree == 2:
color_map.append('green')
elif degree == 3:
color_map.append('blue')
else:
color_map.append('red')
```
3. 最后,调用 draw 函数,将节点颜色绘制出来。
```python
import matplotlib.pyplot as plt
pos = nx.spring_layout(G)
nx.draw(G, pos, node_color=color_map)
plt.show()
```
这样就可以根据节点的度信息,绘制不同颜色的图形了。
阅读全文