WordCloud — 词云

00x0 前言

上一篇其实还有一些微小的工作没做完,做完分词之后可以生成词云的。那什么是词云呢?词云又名文字云,是对文本数据中出现频率较高的关键字在视觉上的突出呈现,形成关键字的渲染形成类似云一样的彩色图片,从而可以一眼领略文本数据表达的意思。例如一下:

从技术上来说,词云是一种数据可视化方法,下面我们用python可以很简单的实现。

00x1 库的安装

这里需要安装第三方库 WordCloud。这里强烈建议看官方文档:ReadMe

安装是很简单的,如果出现了一下错误:

1
error: Unable to find vcvarsall.bat

或者

1
2
PackageNotFoundError: Package missing in current win-64 channels:
- wordcloud

很大的可能性就是你和我一样,在Win上开发Python。凡是安装和操作系统底层密切相关的Python扩展,机会都会遇到这个错误。那怎么解决呢?—>参照我 网上找的大多数都是参照这篇文章的。不过很不幸,我参照上面的弄了一上午还是没搞定,如果你有更好的建议,欢迎邮件—> admin@omooo.top,谢谢。所以这里最好用 Linux 系统来撸,这个Bug是真的烦。

00x2 源码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
# 导入了画图的库matplotlib,词云生成库wordcloud 和 jieba的分词库;
import matplotlib.pyplot as plt
from wordcloud import WordCloud
import jieba
# 读取本地的文件
text_from_file_with_apath = open('/Users/hecom/23tips.txt').read()
#使用jieba进行分词
wordlist_after_jieba = jieba.cut(text_from_file_with_apath, cut_all = True)
wl_space_split = " ".join(wordlist_after_jieba)
#生成词云
my_wordcloud = WordCloud().generate(wl_space_split)
#用pyplot展示词云图
plt.imshow(my_wordcloud)
plt.axis("off")
plt.show()

00x3 关于更多

请参照一下链接:

  1. https://github.com/amueller/word_cloud
  2. http://www.techug.com/post/generate-word-cloud-by-python.html
  3. https://amueller.github.io/word_cloud/auto_examples/colored.html#colored-py

最后不能放妹子图了,昨晚都没好好睡,怎么说?如果你能听懂下面这首歌,可能,,,嗯,依旧很难说。

我们一直都向往,面朝大海,春暖花开。 但是几人能做到,心中有爱,四季不败?