用Python生成词云图

  • 格式:pdf
  • 大小:4.58 MB
  • 文档页数:5

哪位客字。pm

京都

接着,我们把储存在程序目录下的txt文档命名

为“B站测试题txt”,在程序中输入以下代码来读取这个文档

。

在上面这段代码中,我们读取了

B站测试

.txt

”

@91

)海市文登区七里汤中学宋海霞?威

我们在阅读一篇很长的文章时,总想先看看文章的关键词来

获知文章的大概内容。

今天我们就来制作一个

词云程序,将文章中出

现

次数较多的词语提取出

来,生成一张词

云图

。

在开始编写程序之前,我们先了解一下这种词云

图的

生成原理。我们拿到篇文章,程序会将这篇文章中的所有词组识别出来,然后统计每个词组出现的

次数

,出现次数越

多,词组的字号越大,最后把所有词组拼合成一张图像,也就是我们想要的词云图

。

我们

需要把这篇文章储存在个txt文档里,把这个文档和程

序放在同一个文件夹下

。

生成词云

我们现在开始制作词云程序。

在PyCharm中新建个Python文件。%欢迎小读者扫描二维码观|看Python教程。安装所需的第三方库,它们分别是jieba和

wordcou

用之前介绍的方法安

装即

。

安装完成后开始编

程序

。

首先调用jieba和wo

rdcoud

模块

。

/Tri

o厂f

ji

eba

importw

ordcloud

下面的内容默认你已经安装好了Python的运行环境,并且以PyCharm作为默认

q

如果你不知道这是什么意思,请扫码观

看视频,跟着视频的讲解做遍,就可以装好PyCharm和Python

环境

。

f

=open(,,B站测试题.txt","r",encoding="

gbk

)

4September2019这个文档,并把它储存在f这个变量中。现在我们要读取文档中的文字,把它储存在个新的变量t中,在程序中添加以下代码:t=f.read()读取完毕,我们就可以关闭这个文档了,在程序中添加以下代码:f.close()下面我们把文章中的词组提取出来,在程序中添加以下代码:Is=jieba.lcut(t)txt="".join(ls)现在我们已经将词组提取出来并用空格分开,提取出来的词组保存在一个新的变量txt里面。下一步我们要新建个词云的对象,并设定一些参数。w=wordcloud.WordCloud(width=2000,height=1400,font_path="msyh.ttc"在上面这段代码中,我们新建了一个词云的对象并将其命名为w。我们设定生成词云图片的宽度为2000像素,高度为1400像素,设定文字的字体为微软雅黑。现在我们要把之前生成的词组变量txt导入词云对象w中。w.generate(txt)w.to_file('pic.png")代码编写完成后运行,如果看到以下提示,代表我们的工作还算顺利。编写完成的代码如下

:

importjieba

impo

t

wordcloud

f=cjpen("B站测试题.t

xt","r”,encoding="gbk

)

t=f.

ea

()

f.

clos

()

Is=jieba

.lcu

(t)

txt

=

”"

jo

in(ls

)

w=wordcloud.WordCloud(width=2000

,

height=1400,

font__path=Mms

yh

.ttc

"

w.generate

(txt)

w.tofilefpic.pn

)

打开程序所在的文件夹,我们可以看到这

生

成了个名为pc.png的图片文件。

打开后我们可以看到,生成的词云的效果还

是

很不

。

September2019

5换个背景顔色S's

|

我们可以看到,这个生成的词云图片的背景是

白色的,原因在于wordcoud模块默认的背景颜色

就是白色,想让背景改变颜色的话,需要修改建立

词云对象的代码

:

紫色purp

le粉红色:pi

nk

蓝色blue红色

:red

黑色

lack

黄色

:yellow

青色

cyan金色:gold

标色brown白色

:white

上期我们就介绍过,turtle支持的颜色很

,

常用的颜色可以用英文名称表示,不常用的

颜色可

以用16进制数值模式来表示,代码如下:

w=wo

rdcloud

.WordCloud(wi

dth=2000

,

heigh

=1

400

,

background_color="#FFF

FA

,

font_path="ms

.ttc

"

修改完成之后运行,我们发现图片的背景颜色

变成了灰色(文字布局是随

每次都不样

)。

除了灰色之外,我们还可以将背景设置为其

他

颜色,比如说想要蓝色就在引号中填入Bue,想要

黄色就填入yeow。下面给出了些我们常用的颜色的英文名

。

16进制数值模式用以#开头的6位16进制数

表示颜色,你可以在下面这个网站上找到自己

想要的颜色的16进制颜色数值

。)

查询网站

:

http://tool.oschina.net/commons?type=3

除了

可以设置背景的颜色以外,我们还可

以设

置文字的颜色

。

w=wo

rdcloud

.

WordCloud(width=2000

,

height=1400

,

fontj3ath="msyh.ttc

,

cx)lormap='cool

,

在上面这段代码

,

backgroundc

olo

r

代表我们要

更改颜色,引号中的

容是我

们

要改成的颜色,比如Grey就是灰

色的意思。

:wordcloud.WordCloud(width=2000,

height=1400

,

background_colo

r="Gre

,

fontj3ath

"msy

.ttc

"

6September2019