词云图源代码

2019-09-09 17:56:05 浏览数 (1)

#**使用“结巴”分词库进行文本分词,再结合“词云图”库,用指定的图片作为蒙版,分词出的关键字进行填充。**#**#

import jieba import jieba.analyse import numpy from wordcloud import WordCloud import PIL.Image as Image #读取文件,返回一个字符串,使用utf-8编码方式读取,该文档位于此python同以及目录下 content = open(u'baifan.txt','r',encoding='UTF-8').read() #使用停词功能,该文档位于此python同以及目录下 jieba.analyse.set_stop_words("stopwords.txt") #分词,withWeight=True(是否输出词占比,默认为否) tags=jieba.analyse.extract_tags(content,topK=100)

#打开背景图片并numpy转换 mask_pic=numpy.array(Image.open("fz.png")) test=" ".join(tags) #转换后的文本生成词云图,以背景图片蒙版 wordcloud = WordCloud(background_color="white",font_path="C:/Windows/Fonts/simfang.ttf",mask=mask_pic).gen

erate(test) #显示最终结果 image = wordcloud.to_image() image.show()

效果展示:

jieba库基本介绍

(1)、jieba库概述

jieba是优秀的中文分词第三方库

- 中文文本需要通过分词获得单个的词语 - jieba是优秀的中文分词第三方库,需要额外安装

- jieba库提供三种分词模式,最简单只需掌握一个函数

(2)、jieba分词的原理

Jieba分词依靠中文词库

- 利用一个中文词库,确定汉字之间的关联概率 - 汉字间概率大的组成词组,形成分词结果

- 除了分词,用户还可以添加自定义的词组

2、jieba库使用说明

(1)、jieba分词的三种模式

精确模式、全模式、搜索引擎模式

- 精确模式:把文本精确的切分开,不存在冗余单词 - 全模式:把文本中所有可能的词语都扫描出来,有冗余

- 搜索引擎模式:在精确模式基础上,对长词再次切分

(2)、jieba库常用函数

0 人点赞