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

很多人学习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。

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

e分钟带你利用Python制作词云图的更多相关文章

  1. 词云wordcloud类介绍&python制作词云图&词云图乱码问题等小坑

    词云图,大家一定见过,大数据时代大家经常见,我们今天就来用python的第三方库wordcloud,来制作一个大数据词云图,同时会降到这个过程中遇到的各种坑, 举个例子,下面是我从自己的微信上抓的微信 ...

  2. 如何用Python 制作词云-对1000首古诗做词云分析

    公号:码农充电站pro 主页:https://codeshellme.github.io 今天来介绍一下如何使用 Python 制作词云. 词云又叫文字云,它可以统计文本中频率较高的词,并将这些词可视 ...

  3. C#中使用jieba.NET、WordCloudSharp制作词云图

    目录 词云简介 准备工作 基本算法 算法实现 运行测试 参考资料 词云简介 "词云"由美国西北大学新闻学副教授.新媒体专业主任里奇·戈登(Rich Gordon)于2006年最先使 ...

  4. Python之利用jieba库做词频统计且制作词云图

    一.环境以及注意事项 1.windows10家庭版 python 3.7.1 2.需要使用到的库 wordcloud(词云),jieba(中文分词库),安装过程不展示 3.注意事项:由于wordclo ...

  5. python制作词云

    需要模块wordcloud,pip install wordcloud安装即可.代码: , #边距background_color='black',#指定背景颜色font_path='simhei.t ...

  6. python爬取B站视频弹幕分析并制作词云

    1.分析网页 视频地址: www.bilibili.com/video/BV19E… 本身博主同时也是一名up主,虽然已经断更好久了,但是不妨碍我爬取弹幕信息来分析呀. 这次我选取的是自己 唯一的爆款 ...

  7. 如何利用Python网络爬虫抓取微信好友数量以及微信好友的男女比例

    前几天给大家分享了利用Python网络爬虫抓取微信朋友圈的动态(上)和利用Python网络爬虫爬取微信朋友圈动态——附代码(下),并且对抓取到的数据进行了Python词云和wordart可视化,感兴趣 ...

  8. 利用Python网络爬虫采集天气网的实时信息—BeautifulSoup选择器

    相信小伙伴们都知道今冬以来范围最广.持续时间最长.影响最重的一场低温雨雪冰冻天气过程正在进行中.预计,今天安徽.江苏.浙江.湖北.湖南等地有暴雪,局地大暴雪,新增积雪深度4-8厘米,局地可达10-20 ...

  9. python 做词云图

    #导入需要模块 import jieba import numpy as np import matplotlib.pyplot as plt from PIL import Image from w ...

随机推荐

  1. PHP create_function()代码注入

    查看代码 分析 变量$action要出现数字字母以外的字符,还要执行函数. /i不区分大小写 /s匹配任何不可见字符,包括空格.制表符.换页符等等 /D如果使用$限制结尾字符,则不允许结尾有换行 这里 ...

  2. MySQL数据库06 /数据库总结

    MySQL数据库06 /数据库总结 目录 MySQL数据库06 /数据库总结 1. 数据库/DBMS 2. 数据库分类 3. 修改密码 4. 库操作 5. 表操作 6. 存储引擎 7. 事务 8. 约 ...

  3. Reface.AppStarter 类型扫描 —— 获得系统中所有的实体类型

    类型扫描 是 Reface.AppStarter 提供的最基本.最核心的功能. AutoConfig , ComponentScan 等功能都是基于该功能完成的. 每一个使用 Reface.AppSt ...

  4. 如何手写一个ArrayList

    写完HashMap,觉得手痒痒,所以隔了一天再来实现一下简单的ArrayList,ArrayList相比而言就非常的简单,主要的核心点有以下几个方面: 1.ArrayList的底层是由数组构成的 2. ...

  5. 集训 T3-难题

    大致题意: 求方程 \(a_1+a_2+...+a_n=m\) 的非负整数解有几个. 基本思路: 深搜,虽然看起来可能会超时,但是对于100%的数据,0<=n,m<32767,结果< ...

  6. 一个牛逼的FTP——Wring Ftp

    背景:总公司内网有一部分文档需要共享,想要一个能便捷管理的文档系统 需求:分帐号授权,有的帐号只能看,有的帐号只能新增,有的帐号可以增删改查,另外可以便捷的对帐号进行管理 方法: 一.Wing Ftp ...

  7. PHPSTORM断点调试配置

    一.安装Xdebug xdebug官方提供了一个非常友好的安装指导: https://xdebug.org/wizard.php 打开上面的网站,将你的phpinfo页面输出的内容复制到表单中,然后点 ...

  8. Android仿支付宝高顶部功能条伸缩动画

    参考:https://blog.csdn.net/aqi00/article/details/72621176

  9. 谁来教我渗透测试——Windows server 2003上部署动态ASP网站

    安装网站 我们点击开始/管理工具/管理您的服务器 在服务器配置页面点击添加或删除角色 选择应用程序服务器,点击下一步 将两个工具都勾选上,点击下一步 点击下一步进行安装 等待安装 安装完成后点击完成按 ...

  10. 利用Python的装饰器一键开启多线程

    记录一下自己写的烂代码 import time import threading def WithThread(obj): """这是一个开启线程的装饰器"&q ...