那些炫酷的词云图是怎么做出来的?

我们在上网冲浪的时候经常可以看到非常炫酷的词云图

比如这样:

在这里插入图片描述

这样:在这里插入图片描述

再比如:在这里插入图片描述

很多小伙伴会觉得,哇塞,好厉害的图!做起来是不是很难啊!

词云图,也就是文字云,是对文本中出现的频率较高的关键词予以视觉化的展示。其优点显而易见啦,可以使读者只要一眼扫过就可以领略文本的重要信息。词云图其实并不是很难,用python第三方模块很容易实现的。

下载第三方模块

主要用到的模块有wordcloud和jieba

wordcloud

这是生成词云展示的核心第三方库,以词语为基本单位,将词语进行可视化展示

wordcloud.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 指定词云图片的背景颜色,默认为黑色

jieba

在创建词云对象之前,我们要进行分词操作

jieba是一款很棒的Python第三方中文分词库

jieba分词算法

  • 基于统计词典,构造前缀词典,基于前缀词典对句子进行切分,得到所有切分可能
    根据 切分位置,构造一个有向无环图(DAG)

  • 基于DAG图,采用动态规划计算最大概率路径(最有可能的分词结果),根据最大概率路径分词

  • 对于新词(词库中没有的词),采用有汉字成词能力的HMM模型进行切分

import jieba

content = "现如今,机器学习和深度学习带动人工智能飞速的发展,并在图片处理、语音识别领域取得巨大成功。"

seg_1 = jieba.cut(content,cut_all=False)
# print(seg_1)
print("/".join(seg_1))
  • 全模式:将语句中所有可能是词的词语都切分出来,速度很快,但是存在冗余数据
seg_3 = jieba.cut(content,cut_all = True)
print("/".join(seg_3<
  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值