自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

文本分析之制作網(wǎng)絡(luò)關(guān)系圖——Python

大數(shù)據(jù)
這篇文章寫的很好(希望不要黑我,我也是覺(jué)得真心好)。我基本上借鑒了這篇文章思路寫今天這個(gè)腳本,實(shí)現(xiàn)了自動(dòng)生成關(guān)系網(wǎng)絡(luò)圖。

[[189747]]

今天給大家?guī)?lái)我一個(gè)腳本,用來(lái)分析社會(huì)網(wǎng)絡(luò)關(guān)系。

這個(gè)圖我沒(méi)有用到gephi或者其他的工具,是我用python純腳本運(yùn)行出來(lái)的。簡(jiǎn)單的實(shí)現(xiàn)了封裝,大家有興趣可以下載下腳本,運(yùn)行下。

原理知識(shí)

我就簡(jiǎn)單說(shuō)下原理吧,先刻畫一個(gè)簡(jiǎn)單的圖A

  1. import networkx as nx 
  2. import matplotlib.pyplot as plt 
  3. #有向圖 
  4. DG = nx.DiGraph() 
  5. #添加一個(gè)節(jié)點(diǎn) 
  6. DG.add_node('A'
  7. #作圖,設(shè)置節(jié)點(diǎn)名顯示,節(jié)點(diǎn)大小,節(jié)點(diǎn)顏色 
  8. nx.draw(DG,with_labels=True,node_size=900,node_color = 'green'
  9. plt.show() 

雙節(jié)點(diǎn),有方向A–>B

  1. #有向圖 
  2. DG = nx.DiGraph() 
  3. #添加一個(gè)節(jié)點(diǎn) 
  4. DG.add_node('A'
  5. DG.add_node('B'
  6. #添加邊,有方向,A-->B 
  7. DG.add_edge('A','B'
  8. #作圖,設(shè)置節(jié)點(diǎn)名顯示,節(jié)點(diǎn)大小,節(jié)點(diǎn)顏色 
  9. nx.draw(DG,with_labels=True,node_size=900,node_color = 'green'
  10. plt.show() 

添加更多節(jié)點(diǎn)

  1. import networkx as nx 
  2. import matplotlib.pyplot as plt 
  3.  
  4. colors = ['red''green''blue''yellow'
  5. #有向圖 
  6. DG = nx.DiGraph() 
  7. #一次性添加多節(jié)點(diǎn),輸入的格式為列表 
  8. DG.add_nodes_from(['A''B''C''D']) 
  9. #添加邊,數(shù)據(jù)格式為列表 
  10. DG.add_edges_from([('A''B'), ('A''C'), ('A''D'), ('D','A')]) 
  11. #作圖,設(shè)置節(jié)點(diǎn)名顯示,節(jié)點(diǎn)大小,節(jié)點(diǎn)顏色 
  12. nx.draw(DG,with_labels=True, node_size=900, node_color = colors) 
  13. plt.show() 

好了,同樣的道理,咱們建立角色詞典,插入節(jié)點(diǎn)列表,然后遍歷插入有向邊關(guān)系,就能做出這圖:

《Python基于共現(xiàn)提取《釜山行》人物關(guān)系》

這篇文章寫的很好(希望不要黑我,我也是覺(jué)得真心好)。我基本上借鑒了這篇文章思路寫今天這個(gè)腳本,實(shí)現(xiàn)了自動(dòng)生成關(guān)系網(wǎng)絡(luò)圖。

準(zhǔn)備工作

  1. 一、安裝matplotlib、networkx 
  2.  
  3. 二、解決matplotlib無(wú)法寫中文問(wèn)題 
  4.  
  5. 1、找到pythonX\lib\site-packages\matplotlib\mpl-data\fonts\ttf文件夾 
  6.  
  7. 2、matplotlib默認(rèn)調(diào)用的為DejaVuSans.ttf字體文件,網(wǎng)上下載個(gè) 
  8.  
  9. 微軟雅黑.ttf 
  10.  
  11. 3、將微軟雅黑文件名改為DejaVuSans.ttf粘貼到ttf文件夾下即可。 

腳本文件簡(jiǎn)介

你下載后腳本文件夾名為:人民的名義

其中的relationship.py就是大鄧寫的庫(kù)(直接能調(diào)用的哦)

實(shí)現(xiàn)功能:

1、讀入小數(shù)數(shù)據(jù)和角色詞典后,對(duì)數(shù)據(jù)分詞后生成角色關(guān)系數(shù)據(jù)(有向關(guān)系數(shù)據(jù))

2、無(wú)需gephi繪圖即可制作絢麗角色關(guān)系網(wǎng)絡(luò)圖。

注意:

1、運(yùn)行腳本前,文件夾中只保留角色名單.txt 人民的名義.txt 和 relationship.py

2、要想圖片好看點(diǎn),一定要聯(lián)網(wǎng)啊。里面我寫了個(gè)爬蟲,爬取一個(gè)配色網(wǎng)站的配色值。

如果你們想單機(jī)也可以畫出好看的圖,可以修改下代碼,將代碼爬蟲部分改成讀取本地顏色數(shù)據(jù)

使用示例

1、建好小說(shuō)數(shù)據(jù)中的角色字典,格式如下

2、在文件夾中放入小說(shuō)txt文件(人民的名義.txt)

3、在腳本文件夾中新建一個(gè)test.py文件

  1. #導(dǎo)入relationship庫(kù)中的Relationship類 
  2. from relationship import Relationship 
  3.  
  4. #自定義節(jié)點(diǎn)詞典(小說(shuō)中人物角色) 
  5. dictpath = r'/Users/suosuo/Desktop/人民的名義/角色名單.txt' 
  6. #小說(shuō)路徑,只能是編碼方式為utf-8的txt文件 
  7. datapath = r'/Users/suosuo/Desktop/人民的名義/人民的名義.txt' 
  8. #程序運(yùn)行生成的角色關(guān)系圖保存地址 
  9. pic = r'/Users/suosuo/Desktop/人民的名義/人物關(guān)系圖.png' 
  10. Re = Relationship(dictpath, datapath) 
  11. relation = Re.relationship() 
  12. graph = Re.network_digraph(relation, pic) 

4、運(yùn)行

文件夾中生成了 人物關(guān)系圖.png、node_edge.txt和node_freq.txt文件。

node_edge.txt 有向圖關(guān)系數(shù)據(jù),可以后續(xù)導(dǎo)入gephi軟件自定義制圖

node_freq.txt 節(jié)點(diǎn)出現(xiàn)頻率

注意:每次運(yùn)行前請(qǐng)把人物關(guān)系圖.png、node_edge.txt和node_freq.txt文件刪除掉,再運(yùn)行。

責(zé)任編輯:武曉燕 來(lái)源: 36大數(shù)據(jù)
相關(guān)推薦

2020-07-07 10:50:19

Python丄則表達(dá)文本

2019-11-06 16:40:31

awkLinux文本分析工具

2019-03-21 14:30:15

Linux文本分析命令

2023-11-28 15:18:24

Python

2024-09-23 09:20:00

Python庫(kù)文本分析

2023-10-20 16:25:30

Python

2010-01-05 16:55:44

JSON 文本

2016-12-23 10:56:34

linuxshellawk

2021-03-06 07:00:00

awk文本分析工具Linux

2015-09-18 22:11:33

2022-10-09 08:00:00

機(jī)器學(xué)習(xí)文本分類算法

2014-10-23 09:40:57

2023-05-04 07:39:14

圖神經(jīng)網(wǎng)絡(luò)GNN

2017-08-04 14:23:04

機(jī)器學(xué)習(xí)神經(jīng)網(wǎng)絡(luò)TensorFlow

2017-08-25 14:23:44

TensorFlow神經(jīng)網(wǎng)絡(luò)文本分類

2017-06-20 11:00:13

大數(shù)據(jù)自然語(yǔ)言文本分類器

2023-11-13 18:37:44

2017-11-30 18:42:22

PythonCPU腳本分析

2020-12-31 05:37:05

HiveUDFSQL

2024-12-20 16:00:00

Python文本分類聚類
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)