导读:在上一章节先容在Python环境下调用HanLP包进行分词的根本上,本文将先容如何利用wordcloud绘制词云。只管目前市情上已经有很多成熟的在线交互词云工具,但是考虑到实际事情中有很多内容是具有保密性的,无法直接在互联网上公开。因此,如何在本地搭建词云平台,自定义地绘制词云显得格外主要。
1.词云图是一种用来展现高频关键词的可视化表达,通过笔墨、色彩、图形的搭配,产生具有冲击力的视觉效果,并传达有代价的信息。
2.词云是通过形成 \"大众关键词云层\"大众 或 \"大众关键词渲染\公众,对文本中涌现频率较高的关键词的视觉上的突出,词云图能过滤掉大量的文本信息,利用户只要一眼扫过文本就可以领略文本的主旨。
1.微词云:https://www.weiciyun.com/
2.易词云:https://www.yciyun.com/
3.词云统计:http://cloud.niucodata.com/4.图悦:http://www.picdata.cn/picdata/index.php
5.优词云:http://www.uciyun.com/
6.美寄词云:https://www.moage.cn/wordart
pip install numpy==1.19.1
pip install pillow==7.2.0
pip install matplotlib==3.3.2
pip install wordcloud==1.8.0
wordcloud库把词云当作一个 WordCloud 工具,以是利用wordcloud可以大致分为三个步骤(以英文为例):
1.创建工具:wc= wordcloud.WordCloud()
2.加载文本:wc.generate(\公众Choose a life of action, not one of oste-ntation.\"大众)
3.输出文件:wc.to_file(\"大众./picture/1.png\"大众)
如下图所示,一个大略单纯、基本的词云便天生了。值得把稳的是,天生的词云可以过滤掉停用词、介词、冠词等无意义的单词。
此外, wordcloud库还有如下特点。
附上wordcloud内的配置参数
3. wordcloud 根本实战
在本节,本文将先容如何通过读取文本从而天生自定义式的词云,紧张分为以下4步:
1.读取文本文件 (支持多种格式文本,包括word、excel、ppt等)
2.利用HanLP进行中文分词
3.利用wordcloud天生词云
4.显示/保存词云
注:利用HanLP进行中文分词可以参考我们之前的文章。
《NLP快速入门:手把手教你用HanLP做中文分词》
寒树爱函数,"大众号:寒树RPA与AINLP快速入门:手把手教你用HanLP做中文分词 下面附上绘制大略中文词云的代码,分词的内容是十九大报告全文。
from PIL import Image
from wordcloud import WordCloud, STOPWORDS
import matplotlib.pyplot as plt
import numpy as np
wc = WordCloud(background_color=\"大众white\"大众,# 设置背景颜色
max_words=2000, # 词云显示的最大词数
height=400, # 图片高度
width=800, # 图片宽度
max_font_size=50, #最大字体
stopwords=stopwords, # 设置停用词
font_path='C:/Windows/Fonts/simhei.ttf', # 兼容中笔墨体,不然中文会显示乱码
)
# 天生词云
wc.generate(text) # 此处的text便是分好词的19大文本
# 天生的词云图像保存到本地
wc.to_file(path.join(d, \公众Images//19da.png\"大众))
# 显示图像
plt.imshow(wc, interpolation='bilinear')
# interpolation='bilinear' 表示插值方法为双线性插值
plt.axis(\"大众off\"大众)# 关掉图像的坐标
plt.show()
绘制的词云如下所示。
4. wordcloud 高等实战
在本节,本文将先容如何将词云绘制在预设定好的背景图片上。例如:以我们最熟习的中国舆图为背景,我们将在此根本上绘制词云,只需修正wordcloud里的“mask”属性值,详细代码如下所示。
from PIL import Image
from wordcloud import wordcloud
import matplotlib.pyplot as plt
import numpy as np
wc = WordCloud(background_color=\"大众white\公众,# 设置背景颜色
max_words=2000, # 词云显示的最大词数
max_font_size=60, #最大字体
stopwords=stopwords, # 设置停用词
mask=np.array(Image.open(\"大众./picture/china.jpg\公众)), # 选择背景图片为中国舆图
font_path='C:/Windows/Fonts/simhei.ttf', # 兼容中笔墨体,不然中文会显示乱码
)
# 天生词云
wc.generate(text) # 此处的text便是分好词的女排评论文本
# 天生的词云图像保存到本地
wc.to_file(path.join(d, \公众Images//nvpai.png\公众))
# 显示图像
plt.imshow(wc, interpolation='bilinear')
# interpolation='bilinear' 表示插值方法为双线性插值
plt.axis(\"大众off\公众)# 关掉图像的坐标
plt.show()
绘制的词云如下所示。