Jieba库使用和好玩的词云

 

2019-04-03Jieba库使用和好玩的词云dom

1、下载jieba库、wordcloud函数库、matplotlib函数库:函数

  依然是用打开cmd索引到scripts里,输入pip intall XXX(xxx是函数库名称),便可下载字体

注:可能要升级pip,输入pip install --upgrade pip来升级spa

 

2、代码展现(附有注释):code

 1 from wordcloud import WordCloud  2 import matplotlib.pyplot as plt  3 import jieba  4 #定义建立词云的函数
 5 def create_word_cloud(filename):  6 
 7     text = open("人间失格.txt","r",encoding='utf-8').read()  #打开本身想要的文本
 8     wordlist = jieba.cut(text, cut_all=True)  # 结巴分词
 9 
10     wl = " ".join(wordlist) 11 
12     wc = WordCloud(             #设置词云
13 
14         background_color="white",        # 设置背景颜色
15 
16         max_words=20,        # 设置最大显示的词云数
17 
18         font_path='C:/Windows/Fonts/simfang.ttf',        # 索引在C盘上的字体库
19 
20         height=500, 21 
22         width=500, 23 
24         max_font_size=150,        # 设置字体最大值
25 
26         random_state=150,        # 设置有多少种随机生成状态,即有多少种配色方案
27 
28  ) 29 
30     myword = wc.generate(wl)  # 生成词云
31     plt.imshow(myword)    # 展现词云图
32 
33     plt.axis("off") 34 
35  plt.show() 36 
37     wc.to_file('img_book.png')        # 把词云保存下
38 
39 #展现本身想要的文本的高频词出现次数代码
40 txt=open("人间失格.txt","r",encoding='utf-8').read()   #打开本身想要的文本
41 words=jieba.lcut(txt) 42 counts={} 43 for word in words: 44     if len(word)==1:  #排除单个字符的分词结果
45         continue
46     else : 47         counts[word]=counts.get(word,0)+1
48 items=list(counts.items()) 49 items.sort(key=lambda x:x[1],reverse=True) 50 for i in range(20):   #展现的高频词个数
51     word,count=items[i] 52     print ("{0:<20}{1:>5}".format(word,count)) 53 if __name__ == '__main__': 54 create_word_cloud('人间失格') #将词云展示出来,调用词云函数

 (本身下载的一些小说、文章的形式要txt)orm

3、视图展现:blog

( 高频词的出现次数运行图)索引

(词云视图展现)图片

(词云还有背景能够设置成你想要的图片形式,可是我不会,若是想要了解,另寻高人吧,或者等我学会以后再来教大家)ip

相关文章
相关标签/搜索