原创教程:手把手教你做Python可视化词云项目(三)

 

 

六、wordcloud的安装和简介

wordcloud库把词云当作一个WordCloud对象。wordcloud.WordCloud()代表一个文本对应的词云,可以根据文本中词语出现的频率等参数绘制词云,绘制词云的形状、尺寸和颜色都可以设定。它的安装方法很简单,可以直接使用PIP进行安装:

 pip  install    wordcloud

在生成词云时,它默认会以空格或者标点为分隔符对目标文本进行分词处理,但是对于中文的文本,分词处理需要我们提前处理好。一般的做法是先将中文文本进行分词,然后以空格或者标点拼接,再调用wordcloud库函数。wordcloud的常用方法如表1-2所示。

表1- 2 wordcloud的常用方法

方法

描述

w.generate(txt)

向WordCloud对象w中加载文本txt,

例如:w.generate("Python and WordCloud")

w.to_file(filename)

将词云输出为图像文件,.png或.jpg,

例如:w.to_file("outfile.png")

七、wordcloud库生成词云

应用wordcloud库对以下字符串“Python  JAVA  C#  C++  ASP.NET Python    and WordCloud  Python”生成一个词云,并保存为图片。


import wordcloud


w = wordcloud.WordCloud()           #步骤1:配置对象参数

w.generate("Python  JAVA  C#  C++  ASP.NET Python    and WordCloud  Python")   #步骤2:加载词云文本

w.to_file("pywordcloud.png")        #步骤3:输出词云文件

 

它生成了一张图片pywordcloud.png,效果如图1-3。从图中看到“Python”文字比较大,这是因为它的词频是字符串中最高的。

 

图1- 3  一组英文单词词云效果

wordcloud也可以生成任何形状的词云,为了获取形状,需要提供一张相应形状的图像。图像最好以PNG格式的图片,其它无关的轮廓或者内容提前使用图像处理软件清除好。

对于图片的读取可以使用imageio库。imageio是一个Python库,它提供了一个简单的接口来读取和写入大量的图像数据,包括动画图像、体积数据和科学格式。

imageio.imread()    #从指定的文件读取图像。

表1- 3 wordcloud的常用参数wordcloud处理中文时,还可以指定用到的中文字体。中文字体文件需要与代码存放在同一个目录下。如果不放在同一个目录下,中文字体文件即要提供完整路径。表1-3是wordcloud的常用参数。

参数

描述

width

指定词云对象生成图片的宽度,默认400像素

height

指定词云对象生成图片的高度,默认200像素

min_font_size

指定词云中字体的最小字号,默认4号

max_font_size

指定词云中字体的最大字号,根据高度自动调节

font_step

指定词云中字体字号的步进间隔,默认为1

font_path

指定字体文件的路径,默认None

max_words

指定词云显示的最大单词数量,默认200

stop_words

指定词云的排除词列表,即不显示的单词列表

mask

指定词云形状,默认为长方形,需要引用imread()函数

background_color

指定词云图片的背景颜色,默认为黑色

八、wordcloud库生成一个心形词云

应用wordcloud库对素材中的“phthon.txt”文件中的文本生成一个词云,并保存为图片。这个文本也更换为其它的长文本。原始参照图形如图所示。

 

图1- 4 词云心形形状


import wordcloud

from imageio import imread  #导入imageio模块,用于读取图形



#读取文本

file=open('python.txt','r',encoding='utf-8')

txt=file.read()

#读取图片

maskImage=imread('love.png')  #图片形状

w = wordcloud.WordCloud()

#配置参数,并生成词云

w = wordcloud.WordCloud(background_color="white",\

                        width=600,height=500,mask=maskImage)

w.generate(txt)

#生成词云图片

w.to_file("pywcloud.png")

它生成了一张图片pywcloud.png,效果如图1-5。它的宽是600,高是500,使用了图片love.png的词云形状,背景颜色为白色white。单词“Python”的词频最大,其次是“Tutorial”,从词云中可以很直观地看到那些是高频单词。

 

图1- 5 心形词云效果

 

 

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小贝壳大贝壳

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值