4步生成词云图

  • 第1步:词云图是什么鬼
  • 第2步:安装词云图库
  • 第3步:jieba分词器
  • 第4步:生成个性词云图

博文配套视频课程:24小时实现从零到AI人工智能


第1步:词云图是什么鬼

词云图,也叫文字云,是对文本中出现频率较高的“关键词”予以视觉化的展现,词云图过滤掉大量的低频低质的文本信息,使得浏览者只要一眼扫过文本就可领略文本的主旨

马上要到年底了,各种年终总结报告PPT如约而至,内容冗长且没有任何新意。如何在演讲的前几秒抓住领导或者听众的注意力呢?这个时候你可以放一张词云图,报告重点一目了然。报告结束后说不定还有MM请教你词云图如何制作,然后… 咳、咳、咳、醒醒扯远了我们先来看下词云图的庐山真面目吧!

大家可以看到所谓的词云图它能帮我们过滤掉大量的低频低质的文本信息,使得浏览者只要一眼扫过文本就可领略文本的主旨。接下来我们就来讲解改变未来Python语言如何采用几行代码完成词云图的制作。

第2步:安装词云图库

本教程默认采用Anaconda作为开发与运行环境,它集成了目前主流的科学库和的sklearn机器学习框架,这样让我们后续学习数据挖掘与机器学习时更加高效,本身还自带了pip命令用来安装和管理Py的库文件,如果对Anaconda不是很熟悉可以出门左拐阅读我的另一篇博文菜鸟逃离记之Anaconda环境安装

C:\Users\57423>pip install wordcloud
# 默认是从官网下载比较慢,如果配置的PIP镜像则可以通过国内镜像下载
Looking in indexes: https://mirrors.aliyun.com/pypi/simple/
Collecting wordcloudDownloading https://mirrors.aliyun.com/pypi/packages/96/36/f712ec19c6e253d27c5cae0d45a4a465ebb5ccf0cb26887a6a3127d13769/wordcloud-1.6.0-cp37-cp37m-win_amd64.whl (153kB)100% |████████████████████████████████| 163kB 1.5MB/s

第3步:jieba分词器

我们在做词云图之前,首先需要准备一篇文章作为素材。有了文章还不行需要按照国人的语境把文章分成单个的词,在这里我们选用了Py目前使用最广泛的jieba分词器。原理各位不用深究,下面的代码简单来说就是把一篇文章安装中文语境拆分成一个个的词然后用空格分隔。文章各位可以在互联网随便扒一篇即可(下面的代码py文件与new.txt 文章是同目录)

# 加载文章,指定编码读取到内容中
with open("new.txt",encoding="UTF-8") as f:content = f.read()import jieba
# 把文章根据jieba分词规范进行拆分,返回的是list列表
content_list = jieba.lcut(content)
# 列表重新拼接成字符串
content = ' '.join(content_list)
print(content)

第4步:生成个性词云图

大家可以互联网随便找一张图片(背景最好是纯白或者纯黑),轮廓要清楚,这样生成词云图才能知道内容填充在哪里,在本次案例中我们选择了658*658的图片,把此图存放到.py文件的同目录即可

很多时候由于业务需要我们可以配置过滤掉的停用词,可以通过配置一个set()集合来指定停用词,被指定的停用词不会显示在生成的词云图中,完整代码如下

with open("new.txt",encoding="UTF-8") as f:content = f.read()import jieba
# 把文章根据jieba分词规范进行拆分,返回的是list列表
content_list = jieba.lcut(content)
# 列表重新拼接成字符串
content = ' '.join(content_list)
print(content)# 创建set集合并且设置停用词典,配置的词不会显示在词云图中
stopwords = set()
stopwords.update(["人工智能"])from wordcloud import WordCloud
from imageio import imread   # 加载图片
# font_path: 指定支持中文字体,默认英文字体会有乱码
# stopwords: 指定要过滤的停用词,默认set格式
# width,height:指定生成图的尺寸,建议与原图相同
# background_color:指定轮廓图的背景色,轮廓图需要采用纯色
# random_state: 如不指定每次生成文字随机排列
# mask: 指定轮廓图,类似遮罩效果
wc = WordCloud(font_path=r"C:\Windows\Fonts\SimHei.ttf",stopwords=stopwords,width=658,height=658,background_color="white",random_state=1,mask=imread("bg.png"))
# 加载上面已经拆分的文字信息
wc.generate(content)
# 设置词云图保存路径
wc.to_file("ciyun.png")

词云图最终效果图如下

02_IT Boy,你的年终总结缺张图相关推荐

  1. 只有程序员才能看懂的30张图,绝配!

    点击上方"AI遇见机器学习",选择"星标"公众号 重磅干货,第一时间送达 周末轻松一下! 「1」 当我演示一个功能, 但它没有按预期进行时. 「2」 Bug 变 ...

  2. 程序员才能看懂的30张图,看到最后一张我哭了

    「1」 当我演示一个功能, 但它没有按预期进行时. 「2」 Bug 变 Feature, 这招简直太帅了! 「3」 CPU新用途:烤肉 隔着屏幕都闻到一阵香气 「4」 当我修复一个隐藏Bug时 然后, ...

  3. 一张图学会python-一张图 python

    广告关闭 2017年12月,云+社区对外发布,从最开始的技术博客到现在拥有多个社区产品.未来,我们一起乘风破浪,创造无限可能. 翻译:丁雪校对:黄念格式:吴怡雯今天由我们的可视化专栏,用一张图介绍py ...

  4. 一张图理解EOS是什么

    从比特币到以太坊,再到 EOS,它们背后的组织渐趋复杂.比特币处在完全自运转的状态.以太坊由以太坊基金会开发软件和运转该区块链网络.出于各种原因,EOS 显得更为复杂.初看,它至少包括以下三个部分. ...

  5. 六张图,看懂前瞻性数据分析,该如何做

    有同学问:领导总让做"有前瞻性"的分析,不要说那些"大家都知道的事".可到底什么是前瞻性?有时候明明写了预计未来情况,可还是被批判为:没啥前瞻性.真不知道咋办了 ...

  6. 【Python画图01】一张图上两条线,坐标图例设置

    一.学习背景 最近在学习python制图,准备做个模板好出图 目录 一.学习背景 二.参考 三.代码学习 1.figure语法说明 2. 一张图上2条线 3. 坐标轴取值范围.坐标轴标题.坐标轴小标 ...

  7. 一张图揭秘在阿里、腾讯、美团工作的区别

    一张图揭秘在阿里.腾讯.美团工作的区别 阿里.腾讯.美团作为中国互联网公司市值排名前三的大厂,一直是就业热门选择. 今天,就来对比一下在阿里.腾讯.美团工作的区别,给小伙伴们作为参考-- 01 互联网 ...

  8. 微信朋友圈长视频服务器地址,微信这个强大的功能,能在朋友圈发送超长视频,还能1次发30张图...

    现如今,微信,相信是各位用户最为熟悉的两个字了.似乎以"一字千金"来形容这两个字,都不一定能够将它的价值表达出来,而以"价值连城"来形容它,反倒让人觉得毫不为过 ...

  9. 不带头节点的链表有哪些缺点_23张图!万字详解「链表」,从小白到大佬!

    链表和数组是数据类型中两个重要又常用的基础数据类型. 数组是连续存储在内存中的数据结构,因此它的优势是可以通过下标迅速的找到元素的位置,而它的缺点则是在插入和删除元素时会导致大量元素的被迫移动,为了解 ...

最新文章

  1. 添加支付宝支付按钮,实现捐赠本站
  2. 安装python的rabbitmq扩展库
  3. 重构-改善既有代码的设计:重构原则(二)
  4. NYOJ 287 Radar 贪心之 区间选点
  5. 使用URL在线语音合成
  6. 【商城购物车】购物车逻辑
  7. 服务端负载均衡和客户端负载均衡
  8. JWT(JSON web token)
  9. 29 PP配置-生产车间控制-工序-定义可用性检查控制
  10. 【高校宿舍管理系统】第十章 缺勤管理、报修管理、来访人员管理以及公告管理
  11. stol函数在linux下使用,linux socket编程(一)
  12. QQ音乐2009去广告方法
  13. 《惢客创业日记》2021.02.01(周一)饺子就酒
  14. 大学用什么python教材_Python开发基础 大学教材
  15. Dreamweaver开发人员工作区 标准工作区的区别
  16. 棋牌麻将 - 基础名词讲解与汇总
  17. 数据防泄密软件可以解决哪些安全问题?
  18. 声音大小与振幅的关系_物理知识问答-响度与振幅的关系是什么?
  19. matlab基础知识与简单操作
  20. 什么是 PDF 扁平化?怎样扁平化 PDF? 一起涨知识!

热门文章

  1. el-upload 组件在 on-success 文件上传成功的钩子中传递更多参数
  2. 使用jQuery读取Excel表格
  3. 主观世界的破碎与重建——湖畔大学的失败课外课
  4. java 记事本 新建_Java 生成一个记事本
  5. 小白安装Pr2020教程
  6. 仙之侠道2玖章各个任务详情_《仙之侠道Ⅱ柒章》任务全攻略 新手必看
  7. 电脑耳机只有伴奏人声很小怎么办 插入耳机只有音乐
  8. Java循环——for循环、while循环、do-while循环以及终止循环语句break、continue
  9. 单例模式的各种实现方式(Java)
  10. 集成网易云信实现自定义消息(类似淘宝聊天发送商品信息)