今天给大年夜家带来我一个脚本,用来分析社会收集关系。
这个图我没有效到gephi或者其他的对象,是我用python纯脚本运行出来的。简单的实现了封装,大年夜家有兴趣可以下载下脚本,运行下。
1、建好小说数据中的角色字典,格局如下
道理常识
node_freq.txt 节点出现频率
- import networkx as nx
- import matplotlib.pyplot as plt
- #有向图
- DG = nx.DiGraph()
- #添加一个节点
- DG.add_node('A')
- #作图,设置节点名显示,节点大年夜小,节灯揭捉?色
- nx.draw(DG,with_labels=True,node_size=900,node_color = 'green')
- plt.show()
双节点,有偏向A–>B
- #有向图
- DG = nx.DiGraph()
- #添加一个节点
- DG.add_node('A')
- DG.add_node('B')
- #添加边,有偏向,A-->B
- DG.add_edge('A','B')
- #作图,设置节点名显示,节点大年夜小,节灯揭捉?色
- nx.draw(DG,with_labels=True,node_size=900,node_color = 'green')
- plt.show()
添加更多节点
- import networkx as nx
- import matplotlib.pyplot as plt
- colors = ['red', 'green', 'blue', 'yellow']
- #有向图
- DG = nx.DiGraph()
- #一次性添加多节点,输入的格局为列表
- DG.add_nodes_from(['A', 'B', 'C', 'D'])
- #添加边,数据格局为列表
- DG.add_edges_from([('A', 'B'), ('A', 'C'), ('A', 'D'), ('D','A')])
- #作图,设置节点名显示,节点大年夜小,节灯揭捉?色
- nx.draw(DG,with_labels=True, node_size=900, node_color = colors)
- plt.show()
好了,同样的事理,咱们建立角色词典,插入节点列表,然后遍历插入有向边关系,就能做出这图:
推荐阅读
【51CTO原创稿件,合作站点缀载请注明原文作者和出处为51CTO.com】【义务编辑:wangxueyan TEL:(010)68476606】 【51CTO.com原创稿件】今天,阿里云栖大年夜会·南京峰会正式召开>>>详细阅读
本文标题:文本分析之制作网络关系图——Python
地址:http://www.17bianji.com/lsqh/34999.html
1/2 1