在我们生活的世界中,每一个人以及每一个事物相互之间都存在着关系,有直接关系,也有间接关系,最终会形成一个无形的大的关系网。network模块是一个用python语言开发的图论和复杂网络建模工具,模块内置了常用的图与复杂网络分析算法。network模块有四种图:Graph、DiGraph、MultiGraph、MultiDigraph,分别为无多重边无向图、无多重边有向图、有多重边无向图、有多重边有向图。其中Graph是用点和线来刻画离散事物集合中,每对事物间以某种方式相联系的数学模型。
下面我们来分析《复仇者联盟4》人物关系:
importpandas as pd#导入绘图模块
importnetworkx as nximportmatplotlib.pyplot as plt#读取文件
aa =r‘F:\\python入门\\python编程锦囊\\Code(实例源码及使用说明)\\Code(实例源码及使用说明)\\Code(实例源码及使用说明)\\09\\data\\fl4.xls‘df=pd.DataFrame(pd.read_excel(aa))#去除重复项,并转换成列表
df1=df[‘label1‘].drop_duplicates().values.tolist()
df2=df[[‘label1‘,‘label2‘,‘weight‘]]#设置画布大小
plt.figure(figsize=(6, 5))#颜色数据
colors = df[‘color‘].drop_duplicates().values.tolist()#G:图表,一个networkx图
G =nx.Graph()#添加边
for i indf2.index:
G.add_edge(df2.label1[i], d