栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

有向权重图的绘制

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

有向权重图的绘制

import networkx as nx
import matplotlib.pyplot as plt


def main():
    G = nx.DiGraph()

    # 添加对应的边和点
    for i in range(1, 10):
        G.add_node(i, desc='v' + str(i))  # 结点名称不能为str,desc为标签即结点名称
    G.add_edge(1, 2, weight='6')  # 添加边, 参数name为边权值
    G.add_edge(1, 3, weight='4')
    G.add_edge(1, 4, weight='5')
    G.add_edge(2, 5, weight='111')
    G.add_edge(5, 2, weight='2')
    G.add_edge(3, 5, weight='1')
    G.add_edge(4, 6, weight='2')
    G.add_edge(5, 7, weight='9')
    G.add_edge(5, 8, weight='7')
    G.add_edge(6, 8, weight='4')
    G.add_edge(7, 9, weight='2')
    G.add_edge(8, 9, weight='4')

    #画点和边
    pos = nx.circular_layout(G)
    nx.draw(G, pos)

    #画点标签
    node_labels = nx.get_node_attributes(G, 'desc')
    nx.draw_networkx_labels(G, pos, labels=node_labels)

    #画边标签
    edge_labels = nx.get_edge_attributes(G, 'weight')
    nx.draw_networkx_edge_labels(G, pos, edge_labels=edge_labels,label_pos=0.3, font_size=7)
    plt.show()


if __name__ == '__main__':
    main()
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/724847.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号