运用python制作词云(2)

在运用python制作词云(1)中我们知道了可以用jieba库将语句拆分成词组

接下来我们将使用wordcloud库将得到的词组制作成词云

前排提示:

join()函数使用

语法: 'sep'.join(seq)

上面的语法即:以sep作为分隔符,将seq所有的元素合并成一个新的字符串

返回值:返回一个以分隔符sep连接各个元素后生成的字符串

遇到python不懂的问题,可以加Python学习交流群:1004391443一起学习交流,群文件还有零基础入门的学习资料

运用python制作词云(2)

结果为

运用python制作词云(2)

即以空格为分隔符的字符串

wordcloud库的安装

在命令提示符里面输入命令来安装wordcloud库

pip3 install wordcloud

完成wordcloud库的安装

安装后 在python中输入import wordcloud 如没有错误提示即确认安装成功

词组文本的生成

在生成词云时,wordcloud默认会以空格或标点为分隔符对目标文本进行分词处理。

因此为了方便起见,首先将文本变为以空格和标点为分隔符的词组文本。

下面以文本

2018年世界互联网峰会,马云总体演讲了阿里巴巴的成长历程,以及在战略布局上的思维;从演讲中了解到,阿里巴巴定位之初,并非是一家希望成功的商家身份。而是希望通过阿里巴巴平台,使更多小商家成功的企业。可以知道,马云成功之初,互联网创业阿里巴巴,定位的是小企业。

为例生成以空格和标点为分隔符的词组文本。

运用python制作词云(2)

newtext即为如图

运用python制作词云(2)

wordcloud库中的WordCloud类

wordcloud库的核心是WordCloud类(注意大写),在使用过程中,先实例化一个Wordcloud类,在调用方法将文本转化为词云

WordCloud对象创建的常用参数

运用python制作词云(2)

WordCloud类的常用方法

运用python制作词云(2)

具体使用如图

运用python制作词云(2)

此处特别注意:第13与14行的代码非常坑,第十三行为macos用户使用的代码,Windows系统用户可能会报错,具体请先看下文

14行中 wordcloud=WordCloud(font_path=font).generate(newtxt)

font_path=xxx(即设置字体,xxx为字体文件的完整路径)必须存在,如果不设置的话,中文字符将不显示变成框框如图(但英文字符照常显示)

运用python制作词云(2)

为了使字符不变成框框,便要设置字体

在macos(苹果系统中)找到字体文件路径的方法为:(作者尝试了很久才找到)

1.搜索字体册

运用python制作词云(2)

2.打开字体册

运用python制作词云(2)

找到任意一种中文字体进行图示操作

可以找到字体文件

运用python制作词云(2)

STHeiti Medium.ttc即为字体文件路径

Windows中找到字体文件路径的方法

所有的字体都存放在系统盘下的Fonts文件夹,系统盘下搜索*.ttf,即可找到该系统支持的所有字体文件。

以下是各字体文件的对应关系,华文...类型的字体是安装office之后添加的字体,sim开头的字体是win系统自带的。

以下为部分Windows字体文件名

运用python制作词云(2)

于是为了使上面的代码可以运行,要将第13行代码换成 font='xxx' xxx为文字文件名 可以从上面几个任选

当解决了这个深坑以后输出结果为一张储存在桌面的图片

运用python制作词云(2)

打开图片即可看到词云图

运用python制作词云(2)

接下来我们将运用wordcloud制作如下图一样,各种形状的词云图

运用python制作词云(2)