推荐一个好用的Python词云展示库-wordcloud

前言

嗨喽~大家好呀,这里是魔王呐 ❤ ~!

1.介绍

wordcloud是优秀的词云展示第三方库,wordcloud能够将一段文本变成一个词云。

词云就是将词语通过图形可视化的方式,直观和艺术的展示出来。词云在我们的生活中经常能够看到,无论是中文的词云还是英文的词云。

安装第三方库需要使用pip工具,在命令行下运行安装命令(不是IDLE)。

注意:需要将Python目录和其目录下的Scripts目录加到环境变量中。

使用命令pip install wordcloud安装第三方库,安装之后会提示successfully installed,告知是否安装成功。

2.使用说明

wordcloud库把词云当做一个WordCloud对象,即wordcloud.WordCloud()是一个代表文本对应词云的对象,一个词云就是一个WordCloud对象。

wordcloud库可以根据文本中词语出现的频率等一系列参数来绘制词云,在绘制词云时,词云的形状、尺寸、颜色包括字体都是可以设定的。

wordcloud库对具体词云的绘制有一个基本的思路,思路是用wordcloud库中的WordCloud对象来表明一个词云,WordCloud对象是一个词云的对象基础,然后向这个对象中配置参数、加载文本、输出到文件中。

python资料、源码、教程\福利皆: 点击此处跳转文末名片获取

这同样也是词云绘制的步骤:

  1. 配置对象参数;

  2. 加载词云文本;

  3. 输出词云文件。

为了完成后两个步骤,我们需要将WordCloud对象赋给一个变量名,使得后两个步骤可以调用,例如:w=wordcloud.WordCloud()

配置对象参数(参数之间使用逗号隔开):

width

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

>>>w=wordcloud.WordCloud(width=600)

height

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

>>>w=wordcloud.WordCloud(height=400)

min_font_size

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

>>>w=wordcloud.WordCloud(min_font_size=10)

max_font_size

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

>>>w=wordcloud.WordCloud(max_font_size=20)

font_step

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

>>>w=wordcloud.WordCloud(font_step=2)

python资料、源码、教程\福利皆: 点击此处跳转文末名片获取

font_path

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

>>>w=wordcloud.WordCloud(font_path="msyh.ttc")

max_words

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

>>>w=wordcloud.WordCloud(max_words=20)

stop_words

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

>>>w=wordcloud.WordCloud(stop_words={"Python"})

mask

指定词云形状(提供白色的形状图片),默认为长方形,在使用时需要引用imread()函数,例如:

>>>from scipy.misc import imread

>>>mk=imread("pic.png")

>>>w=wordcloud.WordCloud(mask=mk)

background_color

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

>>>w=wordcloud.WordCloud(background_color="white")

加载词云文本方法(默认前提w=wordcolud.WordCloud()):

w.generate(txt)

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

>>>w.generate("Python and WordCloud")

输出词云文件方法(默认前提w=wordcolud.WordCloud()):

w.to_file(filename)

将词云输出为图像文件,采用.png或.jpg格式,例如:

>>>w.to_file("outfile.png")

在不指定图片宽和高时,默认图片宽为400像素,高位200像素。

由文本变为词云,wordcloud库大概做了4件事:

  1. wordcloud库以空格为分隔符,将文本分割成单词;

  2. wordcloud库会在文本中统计每一个单词出现的次数,单词出现次数越多,那么单词显示的词云效果的字体越大,反之则反。并且将只有1到2个字符的单词过滤掉;

  3. wordcloud库会根据统计单词出现的次数,为不同的单词配置显示的字号;

  4. 进行布局。

英文词云实例:

import wordcloud
txt="Guido van Rossum, Father of Python"
w=wordcloud.WordCloud( \
    background_color="white")
w.generate(txt)
w.to_file("image.png")

生成的图片

中文词云实例:

import jieba
import wordcloud
txt="Python由荷兰数学和计算机科学研究学会的吉多·范罗苏姆于1990年代初设计,作为一门叫做ABC语言的替代品。 \
    Python提供了高效的高级数据结构,还能简单有效地面向对象编程。Python语法和动态类型,以及解释型语言的本质,\
    使它成为多数平台上写脚本和快速开发应用的编程语言,随着版本的不断更新和语言新功能的添加,逐渐被用于独立的、大型项目的开发。"
w=wordcloud.WordCloud( width=1000,font_path="msyh.ttc",height=700) #必须设置字体,否则中文会显示成方框。这里字体文件与.py文件处于同一目录下
w.generate(" ".join(jieba.lcut(txt)))
w.to_file("image.png")

尾语

感谢你观看我的文章呐~本次航班到这里就结束啦 🛬

希望本篇文章有对你带来帮助 🎉,有学习到一点知识~

躲起来的星星🍥也在努力发光,你也要努力加油(让我们一起努力叭)。

最后,宣传一下呀~👇👇👇更多源码、资料、素材、解答、交流皆点击下方名片获取呀👇👇

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值