当前位置:   article > 正文

词云库的生成_词云生成

词云生成

今天我们来聊一聊词云的生成,话不多说开始我们今天的内容吧!

 词云顾名思义是由词汇组成类似云的彩色图形。都说是类似云的彩色图形,那必然少不了彩色的图形,首先我们要做的就是打开和保存图片文件,这里我们通过调用PIL库中的Image来实现。Image模块是在Python PIL图像处理中常见的模块,对图像进行基础操作的功能基本都包含于此模块内。如open(打开)、save(保存)、show(展示)…等功能。具体的内容可以去去官网查看它的资料:http://effbot.org/

  1. Image.open(file)
  2. Image.open(file, mode)

要从文件加载图像,使用 open() 函数, 在 Image 模块:

  1. from PIL import Image #调用PIL库
  2. im=Image.open('..\Stu_Pack\wordcloud\Love_Star.PNG') #文件存在路径
  3. im.show()

 若要保存文件,则使用 Image 类的 save() 方法,

  1. im.save(outfile,options…)
  2. im.save(outfile, format, options…)

此时保存文件的文件名就变得十分重要了,除非指定格式,否则这个库将会以文件名的扩展名作为格式保存。使用给定的文件名保存图像。如果变量format缺省,如果可能的话,则从文件名称的扩展名判断文件的格式。该方法返回为空。关键字options为文件编写器提供一些额外的指令。如果编写器不能识别某个选项,它将忽略它。用户可以使用文件对象代替文件名称。在这种情况下,用户必须指定文件格式。文件对象必须实现了seek()、tell()和write()方法,且其以二进制模式打开。如果方法save()因为某些原因失败,这个方法将产生一个异常(通常为IOError异常)。如果发生了异常,该方法也有可能已经创建了文件,并向文件写入了一些数据。如果需要的话,用户的应用程序可以删除这个不完整的文件。

  1. from PIL import Image
  2. im=Image.open('..\Stu_Pack\wordcloud\Love_Star.PNG')
  3. im.save('..\R&Q_pic\Love_Star.PNG') #将Stu_Pack中wordcloud文件里的Love_Star.PNG'图片保存到R&Q_pic这个文件夹中
  4. im.show()

 知道怎么打开和保存图片文件后,接着我们要生成词云图片,当然我们得要用到worldcloud这个库,wordcloud库,可以说是python非常优秀的词云展示第三方库,wordcloud把词云当作一个对象,它可以将文本中词语出现的频率作为一个参数绘制词云,而词云的大小、颜色、形状等都是可以设定的,总的来说,生成一个漂亮的词云文件三步就可以完成:1、配置对象参数  2、加载词云文本  3、输出词云文件

wordcloud的常规方法如下:

  1. w.generate(txt) #向worldcloud对象W中加载文本
  2. w.to_file(filename) #将词云输出的图像原件.png或.jig格式保存

具体操作如下:

  1. import wordcloud
  2. w=wordcloud.WordCloud()
  3. w.generate('Dream It Possible')#词云内容
  4. w.to_file('../R&Q_pic/DIP.png')#创建图片文件

运行结果如下:

 做到这一步,简单的词云就创建好了,但是现在只是在Stu_pack这个文件夹中创建了这个词云的图片,还需要我们进一步去完善它,我们不单单要创建它,还要让这张图片显现出来,这时就要用到matplotlib这个库了,这个库我上个博客有介绍到,不清楚的话可以去看看我上个博客内容,好了我们接着继续,我们通过以下代码来实现图片的可视化

  1. plt.imshow(w)
  2. plt.show()

注:plt.imshow()函数负责对图像进行处理,并显示其格式,但是不能显示。其后跟着plt.show()才能显示出来。

运行结果如下:

 此时我们就会得到一个带坐标的词云,但因为有这个坐标的存在使得这个词云看上去不是那么美观,这是我们该怎么做呢,这里就要用到一个新的函数axis函数,具体如下:

  1. plt.imshow(w)
  2. plt.axis('off')
  3. plt.show()

axis函数是用来设置具体某一个坐标轴的属性的,具体参照http://matplotlib.org/api/_as_gen/matplotlib.pyplot.axis.html#matplotlib.pyplot.axis

axis()函数常见支持的选项如下:

  • axis(‘off’):关闭轴线和标签。
  • axis(‘equal’):使x轴与y轴保持与屏幕一致的高宽比(横纵比)。
  • axis(‘tight’):使x轴与y轴限制在有数据的区域。
  • axis(‘square’):使x轴与y轴坐标一致。

完成之后,你就会发现刚刚的坐标就消失了,是不是现在的比刚刚的好看多了呢!

 好了,今天要聊的就是这些内容,希望大家喜欢。下次我会给大家带来更好的内容,谢谢大家的观看。

本文内容由网友自发贡献,转载请注明出处:https://www.wpsshop.cn/w/小惠珠哦/article/detail/878629
推荐阅读
相关标签
  

闽ICP备14008679号