Python networkx的 DiGraph使用方法
时间: 2024-06-24 12:01:22 浏览: 281
networkx文档
5星 · 资源好评率100%
NetworkX是一个强大的Python库,用于处理各种复杂的网络和图数据结构。DiGraph(Directed Graph)是其中的一个重要类,用于表示有向图。以下是使用Python NetworkX创建、操作和分析DiGraph的基本步骤:
1. **安装NetworkX**:
如果还未安装,可以使用pip进行安装:
```bash
pip install networkx
```
2. **创建DiGraph**:
创建一个空的DiGraph实例:
```python
import networkx as nx
G = nx.DiGraph()
```
或者从边或节点列表中构建:
```python
G = nx.DiGraph([(1, 2), (2, 3)])
```
3. **添加节点和边**:
添加单个节点:
```python
G.add_node(4)
```
添加带权重的边:
```python
G.add_edge(1, 3, weight=5)
```
4. **基本操作**:
获取节点、边和邻接信息:
```python
nodes = G.nodes() # 获取所有节点
edges = G.edges() # 获取所有边
neighbors = G.neighbors(1) # 获取节点1的邻居
```
5. **属性和标签**:
设置和获取节点和边的属性:
```python
G.nodes['color'] = 'red'
weight = G.get_edge_data(1, 2)['weight']
```
6. **遍历**:
遍历所有节点或边:
```python
for node in G.nodes:
print(node)
for edge in G.edges():
print(edge)
```
7. **路径搜索**:
寻找路径(默认无环):
```python
path = nx.shortest_path(G, 1, 3)
```
8. **图的可视化**:
```python
nx.draw(G, with_labels=True)
plt.show()
```
阅读全文