欢迎您访问 最编程 本站为您分享编程语言代码,编程技术文章!
您现在的位置是: 首页

网络图

最编程 2024-04-12 20:11:10
...

networkx是Python的一个包,用于构建和操作复杂的图结构、动态和功能,提供分析图的算法。

使用NetworkX,您可以以标准和非标准数据格式加载和存储网络,生成多种类型的随机和经典网络,分析网络结构,构建网络模型,设计新的网络算法,绘制网络,等等。

安装依赖

import networkx as nx
import matplotlib.pyplot as plt

绘图

   names = {}  # 人物出现次数
   relationships = {}  # 关系字典
#绘图部分
G = nx.Graph()
for name, times in names.items():
    if times>=3:
        G.add_node(name)

for name, edges in relationships.items():
    for v, w in edges.items():
        if w > 3:
            G.add_edge(name,v,weight=w)

pos = nx.shell_layout(G)
nx.draw_networkx_edges(G, pos, width=[float(d['weight']/10) for (u, v, d) in G.edges(data=True)])
nx.draw_networkx_nodes(G, pos)
nx.draw_networkx_labels(G, pos, labels=None, font_size=12, font_color='k', font_family='YouYuan',font_weight='normal')
plt.show()

效果

0902-1