一、wordcloud简介
词云,又称文字云、标签云,是对文本数据中出现频率较高的“关键词”在视觉上的突出呈现,形成关键词的渲染形成类似云一样的彩色图片,从而一眼就可以领略文本数据的主要表达意思。创建于文本分析及其可视化中。
除了网上现成的Wordle、Tagxedo、Tagul、Tagcrowd等词云制作工具,在python中也可以用wordcloud包比较轻松地实现。
官网:https://pypi.org/project/wordcloud/
github项目:https://github.com/amueller/word_cloud
二、wordcloud原理
同wordcloud做词云,主要做的是三件事:
文本预处理
词频统计
将高频词以图片形式进行彩色渲染
根据源码来看,wordcloud实现词云的步骤如下:
wordcloud制作词云时,首先要对对文本数据进行分词,使用process_text()方法,这一步的主要任务是去除停用词
第二步是计算每个词在文本中出现的频率,生成一个哈希表。词频用于确定一个词的重要性
根据词频的数值按比例生成一个图片的布局,类IntegralOccupancyMap 是该词云的算法所在,是词云的数据可视化方式的核心。生成词的颜色、位置、方向等
最后将词按对应的词频在词云布局图上生成图片,核心方法是generate_from_frequencies,不论是generate()还是generate_from_text()都最终用到generate_from_frequencies 完成词云上各词的着色,默认是随机着色
词语的各种增强功能大都可以通过wordcloud的构造函数实现,里面提供了22个参数,还可以自行扩展。
三、wordcloud参数
参数 | 解释 |
---|---|