利用wordcloud
和jieba
做一个词云
环境
使用到的轮子:matplotlib
,jieba
,scipy
,wordcloud
,numpy
,PIL
。python2
对jieba
的中文分词支持不是很好,所以使用python3
。1234567python 3.6.1jieba 0.39matplotlib 1.0.4scipy 1.0.0wordcloud 1.3.1numpy 1.13.3PIL 1.1.6
- Github源代码
具体实现
导入轮子
1234567#encoding=utf-8import jiebaimport matplotlib.pyplot as pltfrom scipy.misc import imreadfrom wordcloud import WordCloud, STOPWORDS, ImageColorGeneratorimport numpy as npfrom PIL import Image
所用到的库都能用pip3
安装。
生成分词
|
|
数据是从网上复制了几份十九大,国庆,小说的内容,从文本中读入数据到text
,用jieba
进行分词,不使用全模式,全模式匹配会出现重复关键词的现象,使用后效果并不好。
自定义词云背景
|
|
设置生成词云的背景,这里用到了numpy将图片转换为矩阵,图片需要自己下载定义背景。
生成词云
|
|
设置wordcloud
参数,注意这里有一个字体必须自己设置中文字体,否则生成的词云不能出现中文,我用到的是simkai.ttf
,下载地址:simkai字体。
显示词云
|
|
取图片的颜色作为词云的颜色,并显示词云。如下图