网站优化

网站优化

Products

当前位置:首页 > 网站优化 >

学习双代号网络图绘制,掌握项目管理技能?

GG网络技术分享 2025-11-12 22:13 2


为了绘制双代号网络图,我们Neng用Python的networkx库和matplotlib库来实现。

python import networkx as nx import matplotlib.pyplot as plt

activities = { 'A1': {'start': 'A', 'end': '1', 'duration': 2}, 'B2': {'start': 'B', 'end': '2', 'duration': 3}, 'D4': {'start': 'D', 'end': '4', 'duration': 4}, 'E5': {'start': 'E', 'end': '5', 'duration': 5}, 'F7': {'start': 'F', 'end': '7', 'duration': 7}, 'H6': {'start': 'H', 'end': '6', 'duration': 6}, 'C5': {'start': 'C', 'end': '5', 'duration': 5}, '七国': {'start': 'G', 'end': '7', 'duration': 7}, 'E1': {'start': 'E', 'end': '1', 'duration': 1}, }

G = nx.DiGraph

for activity in activities.values: G.addnode for node in G.nodes: if node.startswith: G.addedge

pos = nx.springlayout # 指定布局方式 nx.draw edgelabels = nx.getedgeattributes nx.drawnetworkxedge_labels

plt.show

这段代码先说说定义了一个包含活动信息的字典,然后创建了一个有向图G。对于个个活动,我们添加了两个节点,并添加了从起始事件到收尾事件的边,边的权沉代表工期。

然后我们用spring_layout布局来布局节点,并用draw函数来绘制网络图。我们还添加了边的标签,kan得出来了每条边的权沉。

请注意,为了运行这段代码,你需要有networkxmatplotlib库。Ru果没有安装,Neng用以下命令进行安装:

bash pip install networkx matplotlib

标签:

提交需求或反馈

Demand feedback