def plot_and_save_net(self, picpath='../output/net.png'):
net = nx.DiGraph()
edge_label = dict()
for edge in self.edges:
net.add_edge(edge[0], edge[1], weight=1)
edge_label[(edge[0], edge[1])] = edge[3]
if len(edge_label) > 8:
break
# edge_label.update({(edge[0], edge[1]) : edge[2]})
pos = nx.spring_layout(net, k=20) # positions for all nodes
# nodes
nx.draw_networkx_nodes(net, pos, node_size=6000, node_color="green")
# edges
nx.draw_networkx_edges(net, pos,
width=1.5, alpha=0.5, arrows=True, edge_color='black')
# labels
nx.draw_networkx_labels(net, pos, font_size=20)
nx.draw_networkx_edge_labels(net, pos, edge_labels=edge_label, label_pos=0.5, font_family='sans-serif')
plt.axis('off')
plt.savefig(picpath) # save as png
plt.show() # display
评论列表
文章目录