在之前的基础上,通过对分析结果数据进行可视化分析,让结果更加一目了然。
这里使用networkx进行人物关系网络图绘制。
def painting(): #绘制人物亲密度图G = nx.Graph() # 绘制个人物之间的亲密关系people_num = 0edge_num = 0for i in relationships:G.add_node(i)people_num += 1for n in relationships[i]:G.add_edge(i, n, weight=relationships[i][n])edge_num += 1print(people_num, edge_num)nx.draw(G, with_labels=True, edge_color='b', cmap=plt.cm.Oranges, pos=nx.spring_layout(G),node_color=range(people_num), node_size=900, width=1, font_size=8)plt.show()
networkx可以根据权重来绘制网络图,这里就用人物之间的亲密度来作为权重进行绘图,绘图结果如下:
在这个图中,两个人物之间的距离越近,代表关系越亲密。