draw_network_graph.py 文件源码

python
阅读 18 收藏 0 点赞 0 评论 0

项目:pyneng-examples-exercises 作者: natenka 项目源码 文件源码
def draw_topology(topology_dict, output_filename='img/topology'):
    '''
    topology_dict - ??????? ? ????????? ?????????

    ???? ???????
        {('R4', 'Fa0/1'): ('R5', 'Fa0/1'),
         ('R4', 'Fa0/2'): ('R6', 'Fa0/0')}

    ????????????? ?????????:
    [ R5 ]-Fa0/1 --- Fa0/1-[ R4 ]-Fa0/2---Fa0/0-[ R6 ]

    ??????? ?????????? ?????????, ? ??????? svg.
    ? ?????????? ???? topology.svg ? ??????? img.
    '''
    nodes = set([item[0]
                 for item in list(topology_dict.keys())
                           + list(topology_dict.values())])


    g1 = gv.Graph(format='svg')

    for node in nodes:
        g1.node(node)

    for key, value in topology_dict.items():
        head, t_label = key
        tail, h_label = value
        g1.edge(head, tail, headlabel=h_label, taillabel=t_label, label=" "*12)

    g1 = apply_styles(g1, styles)
    filename = g1.render(filename=output_filename)
    print( "Graph saved in", filename )
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号