相信不少人在网上,或者是在一些报告或者ppt上,都看到过相似这种图片python
你可能会好奇它是怎么作出来的,若是你会ps,你可能会以为,这是用ps一步一步制做出来的。是的没错,一开始我也是坚决不移的这么认为。直到后面我遇到了python。程序员
上网搜索“如何制做词云”,你会获得不少教程。可是这些教程都是利用了一些制做工具,它们功能都太过专注,适用范围有限。并且它们背后的原理,无非也就是利用了python。今天,咱们就抛开表面直击本质。利用强大的python语言制做属于本身的第一张词云。(快放开我,我要装逼)shell
众所周知,python是目前大数据和人工智能领域最流行的语言,这其中很大一部分都要归功于它强大的社区和数不清的第三方类库,那有没有一个集成环境同时集成了python语言的开发环境和经常使用的类库呢,答案是确定的,那就是Anaconda,它集成了大部分科学计算,数据处理,计算机绘图等领域所用到的库。浏览器
还有一件颇有意思的事情,Anaconda和python的中文意思,都是蟒蛇。编辑器
好,接下来进入正题,一步一步实现咱们的第一张词云。工具
首先,进入官网,选择适合你电脑的版本,
注意,不管你的电脑是什么系统,在右边都会有两个选项: Python 2.7 version和Python 3.6 version
我推荐下载使用python3.6版本,由于在这个最新的版本中,不少python语言的缺陷都获得了很好的解决(好比长期困扰python程序员的编码问题),这样在往后的学习中,咱们都会进行的比较顺利。学习
下载完成后获得一个exe格式的安装文件,和正常软件的安装同样,一直下一步下一步就好了,可是在这一步要注意,字体
必定要记得把第一个选项勾上,若是不勾上,在后续的环境变量配置问题上会比较麻烦。虽然它不建议这么作(说实话我也不知道为何),安装时间会比较久,耐心等待就好了。
安装好了之后,先新建一个demo目录,为了方便起见,咱们直接在桌面新建。按住Shift键同时点击鼠标右键,再点击在此处打开命令窗口(win10较新的版本里cmd被powershell取代了,因此出现的会是在此处打开powershell窗口,别担忧,它们的功能是同样的),而后输入mkdir demo
大数据
而后在桌面上就会出现一个demo文件夹编码
而后在这里下载wordcloud工具包,
以前咱们下的是python3.6的版本,若是你的电脑是32位的,就选中倒数第二个,若是是64位的,就选择最后一个。
下载后将这个.whl文件拖拽到你的demo文件夹里。而后在命令行下,先执行
pip install wheel
再执行
pip install wordcloud-1.3.1-cp36-cp36m-win_amd64.whl
wordcloud-1.3.1-cp36-cp36m-win_amd64.whl就是你的下载下来的文件名,
这些步骤作完,咱们就完成了运行环境配置。
先找到你要分析的文章,将其保存为txt文件,好比我在网上摘取了一篇关于anaconda的介绍,将其保存为anaconda.txt文件,
而后在demo目录下运行命令行jupyter notebook
,打开jupyter编辑器。
很快浏览器就会被打开,跳转到这个界面
点击右上方的New,新建一个python3,而后浏览器就会打开一个新的页面,用于输入python代码。
输入
filename = "anaconda.txt" with open(filename) as f: mytext = f.read()
按Shift+Enter 执行,注意:第三行mytext前面必定要有空格。
再输入mytext,按Shift+Enter运行,就会看到txt里的文本已经被保存到这个变量里面来了。
而后调用咱们的wordcloud包,对mytext里面存储的文本进行词云分析。
from wordcloud import WordCloud wordcloud = WordCloud().generate(mytext)
程序可能会报警,可是不会影响正常运行,直接忽略它就是了。
此时词云分析已经完成了,最后一步对分析结果进行可视化处理。
%pylab inline import matplotlib.pyplot as plt plt.imshow(wordcloud, interpolation='bilinear') plt.axis("off"
奇迹发生了
咱们能够在图片上右键将其保存到本地。
到这里,一张词云就作好了。
wordcloud最核心的功能是对关键词进行分析,出现频率大的词会用更大的字体对其进行显示,除此以外,咱们还能够自定义字体的颜色和词云的形状,图片的分辨率等等等等。可是咱们若是要对中文进行分析,还必需要借助中文分词技术。这里就再也不赘述。