热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

e分钟带你利用Python制作词云图

随着大数据时代的来临,数据分析与可视化,显得越来越重要,今天给小伙伴们带来一种最常见的数据可视化图形-词云图的制作方法。很多人学习pyt

  随着大数据时代的来临,数据分析与可视化,显得越来越重要,今天给小伙伴们带来一种最常见的数据可视化图形-词云图的制作方法。

很多人学习python,不知道从何学起。
很多人学习python,掌握了基本语法过后,不知道在哪里寻找案例上手。
很多已经做案例的人,却不知道如何去学习更加高深的知识。
那么针对这三类人,我给大家提供一个好的学习平台,免费领取视频教程,电子书籍,以及课程的源代码!
QQ群:1097524789

      “词云”这个概念由美国西北大学新闻学副教授、新媒体专业主任里奇·戈登(Rich Gordon)提出。“词云”就是对网络文本中出现频率较高的“关键词”予以视觉上的突出,形成“关键词云层”或“关键词渲染”,从而过滤掉大量的文本信息,使浏览网页者只要一眼扫过文本就可以领略文本的主旨

      数据分析与可视化通常分为三个步骤,分别是获取数据(爬虫或采用现有文本),数据处理(清洗和整理)和数据可视化(图表制作)。

      前两个步骤涉及更复杂的算法,今天咱们仅讨论数据可视化的步骤。

      下面给大家介绍几个制作词云图的小例子。

 

 

 

 

01英文数据文本可视化

 

 

      英文数据文本可以直接拿来进行生成词云图,这里是在网上获取了一篇国外名人的英文演讲稿。经过两行代码即可实现从源数据到词云图的转变。源数据截图如下:

 

      直接将英文数据文本放在jupyter notebook软件目录下,并将文件名添加到file_path参数中,不需要任何处理(在anaconda软件下的jupyter notebook中执行,软件安装过程可自行百度,非常简单),一键式生成词云图。

from stylecloud import gen_stylecloud
gen_stylecloud(file_path='obama.txt')

 

 

 

 

02 中文数据文本可视化

 

 

______

LOVE

 

      前一段时间,周杰伦的新歌《mojito》上线后,迎来了广大粉丝的狂热喜爱。很多听过这首歌的人都不禁感叹“爷青回”“青回爷”,也就是我的青春又回来了的意思。确实,我们这一代80后中的很多人都是伴随着周杰伦的歌曲长大的,如《夜曲》、《稻香》、《双截棍》、《晴天》、《听妈妈的话》、《霍元甲》、《不能说的秘密》、《青花瓷》等,都是我们耳熟能详的。

      下面,我们利用Python编程语言来制作周董粉丝在B站上发送弹幕的词云图,看看大家在听《mojito》时,说得最多的是什么。

      首先,我们需要先进入B站视频网页爬取弹幕数据,得到弹幕数据后要进行中文分词处理和去除无意义词(包括标点符号等)处理。

      经过这两步以后,就可以依葫芦画瓢制作词云图。获得的弹幕数据文本截图如下:

 

将弹幕数据文件放到jupyter notebook软件的目录下,并将文件数据添加到text参数当中。其中的icon_name参数就是设置词云图的背景图,我们这里选择了企鹅,飞机和笑脸三个背景图。

       通过以下短短几行代码我们就可以制作出下面绚丽的词云图,让我们来感受下其强大的魅力吧!

 

import stylecloud

stylecloud.gen_stylecloud(text=' '.join(text), collocations=False,

              font_path=r'C:\Windows\Fonts\msy h.ttc',  

               #icon_name='fab fa-qq',#企鹅

               # icon_name='fas fa-plane',#飞机

               icon_name='fas fa-smile',#笑脸

               size=400,

               output_name='词云图.png')

 

      从上面的词云图中,我们可以发现,“爷青回”“青回爷”是粉丝们听完这首歌最大的感受了!歌曲MV中粉红色的画风让大家一下子回到了青春稚嫩的少年时代!还有粉丝大呼“好听”、“过瘾”、“喜欢”、“听一亿遍”等,还有人表示会一直单曲循环!

   在代码中,我们还可以更改配色参数(palette='tableau.BlueRed_6'),让词云图变换不同的颜色,增加美感。

 

 

 

03背景图变换

 

        Python的Stylecloud库强大之处,在于可以很方便的替换词云图的背景图,只要改变代码中的icon_name参数就可以。

      下面又分别选择了恐龙、小狗、鸽子、小猫作为背景图,一切都很简单~

      数据来源是豆瓣电影排名top250的评论,文本源数据截图如下:

 

        制作出来的各种形状的词云图如下图所示:

     由于篇幅有限,这里中文数据文本获取过程和数据处理过程就不作展示了,有兴趣的同学,可以看一下我的个人博客https://blog.csdn.net/littlespider889/article/details/107294775。

     如果大家觉得通过软件生成词云图比较麻烦,那么还有更简单的办法,直接通过专门制作词云图的网站,可以上传数据,一键式生成词云图。网址例如,

http://www.picdata.cn/picdata/,

http://ictclas.nlpir.org/nlpir/,

http://www.yyyweb.com/demo/inner-show/word-itout.html。

     使用方式非常简单,直接将你的文本内容粘贴到文本框区域内,再点击按钮生成。有兴趣的同学,可以上网搜索更多的教程资料!


推荐阅读
  • 微软头条实习生分享深度学习自学指南
    本文介绍了一位微软头条实习生自学深度学习的经验分享,包括学习资源推荐、重要基础知识的学习要点等。作者强调了学好Python和数学基础的重要性,并提供了一些建议。 ... [详细]
  • 阿里Treebased Deep Match(TDM) 学习笔记及技术发展回顾
    本文介绍了阿里Treebased Deep Match(TDM)的学习笔记,同时回顾了工业界技术发展的几代演进。从基于统计的启发式规则方法到基于内积模型的向量检索方法,再到引入复杂深度学习模型的下一代匹配技术。文章详细解释了基于统计的启发式规则方法和基于内积模型的向量检索方法的原理和应用,并介绍了TDM的背景和优势。最后,文章提到了向量距离和基于向量聚类的索引结构对于加速匹配效率的作用。本文对于理解TDM的学习过程和了解匹配技术的发展具有重要意义。 ... [详细]
  • 云原生边缘计算之KubeEdge简介及功能特点
    本文介绍了云原生边缘计算中的KubeEdge系统,该系统是一个开源系统,用于将容器化应用程序编排功能扩展到Edge的主机。它基于Kubernetes构建,并为网络应用程序提供基础架构支持。同时,KubeEdge具有离线模式、基于Kubernetes的节点、群集、应用程序和设备管理、资源优化等特点。此外,KubeEdge还支持跨平台工作,在私有、公共和混合云中都可以运行。同时,KubeEdge还提供数据管理和数据分析管道引擎的支持。最后,本文还介绍了KubeEdge系统生成证书的方法。 ... [详细]
  • 推荐系统遇上深度学习(十七)详解推荐系统中的常用评测指标
    原创:石晓文小小挖掘机2018-06-18笔者是一个痴迷于挖掘数据中的价值的学习人,希望在平日的工作学习中,挖掘数据的价值, ... [详细]
  • 本文介绍了网页播放视频的三种实现方式,分别是使用html5的video标签、使用flash来播放以及使用object标签。其中,推荐使用html5的video标签来简单播放视频,但有些老的浏览器不支持html5。另外,还可以使用flash来播放视频,需要使用object标签。 ... [详细]
  • EPICS Archiver Appliance存储waveform记录的尝试及资源需求分析
    本文介绍了EPICS Archiver Appliance存储waveform记录的尝试过程,并分析了其所需的资源容量。通过解决错误提示和调整内存大小,成功存储了波形数据。然后,讨论了储存环逐束团信号的意义,以及通过记录多圈的束团信号进行参数分析的可能性。波形数据的存储需求巨大,每天需要近250G,一年需要90T。然而,储存环逐束团信号具有重要意义,可以揭示出每个束团的纵向振荡频率和模式。 ... [详细]
  • 在Android开发中,使用Picasso库可以实现对网络图片的等比例缩放。本文介绍了使用Picasso库进行图片缩放的方法,并提供了具体的代码实现。通过获取图片的宽高,计算目标宽度和高度,并创建新图实现等比例缩放。 ... [详细]
  • 原文地址:https:www.cnblogs.combaoyipSpringBoot_YML.html1.在springboot中,有两种配置文件,一种 ... [详细]
  • ZSI.generate.Wsdl2PythonError: unsupported local simpleType restriction ... [详细]
  • Google Play推出全新的应用内评价API,帮助开发者获取更多优质用户反馈。用户每天在Google Play上发表数百万条评论,这有助于开发者了解用户喜好和改进需求。开发者可以选择在适当的时间请求用户撰写评论,以获得全面而有用的反馈。全新应用内评价功能让用户无需返回应用详情页面即可发表评论,提升用户体验。 ... [详细]
  • 如何在服务器主机上实现文件共享的方法和工具
    本文介绍了在服务器主机上实现文件共享的方法和工具,包括Linux主机和Windows主机的文件传输方式,Web运维和FTP/SFTP客户端运维两种方式,以及使用WinSCP工具将文件上传至Linux云服务器的操作方法。此外,还介绍了在迁移过程中需要安装迁移Agent并输入目的端服务器所在华为云的AK/SK,以及主机迁移服务会收集的源端服务器信息。 ... [详细]
  • 深度学习中的Vision Transformer (ViT)详解
    本文详细介绍了深度学习中的Vision Transformer (ViT)方法。首先介绍了相关工作和ViT的基本原理,包括图像块嵌入、可学习的嵌入、位置嵌入和Transformer编码器等。接着讨论了ViT的张量维度变化、归纳偏置与混合架构、微调及更高分辨率等方面。最后给出了实验结果和相关代码的链接。本文的研究表明,对于CV任务,直接应用纯Transformer架构于图像块序列是可行的,无需依赖于卷积网络。 ... [详细]
  • 本文介绍了一种处理AJAX操作授权过期的全局方式,以解决Asp.net MVC中Session过期异常的问题。同时还介绍了基于WebImage的图片上传工具类。详细内容请参考链接:https://www.cnblogs.com/starluck/p/8284949.html ... [详细]
  • 小程序自动授权和手动接入的方式及操作步骤
    本文介绍了小程序支持的两种接入方式:自动授权和手动接入,并详细说明了它们的操作步骤。同时还介绍了如何在两种方式之间切换,以及手动接入后如何下载代码包和提交审核。 ... [详细]
  • GPT-3发布,动动手指就能自动生成代码的神器来了!
    近日,OpenAI发布了最新的NLP模型GPT-3,该模型在GitHub趋势榜上名列前茅。GPT-3使用的数据集容量达到45TB,参数个数高达1750亿,训练好的模型需要700G的硬盘空间来存储。一位开发者根据GPT-3模型上线了一个名为debuid的网站,用户只需用英语描述需求,前端代码就能自动生成。这个神奇的功能让许多程序员感到惊讶。去年,OpenAI在与世界冠军OG战队的表演赛中展示了他们的强化学习模型,在限定条件下以2:0完胜人类冠军。 ... [详细]
author-avatar
wojijola;
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有