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

很多人学习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. Java String:字符串常量池(转)

    作为最基础的引用数据类型,Java 设计者为 String 提供了字符串常量池以提高其性能,那么字符串常量池的具体原理是什么? 字符串常量池的设计思想是什么? 字符串常量池在哪里? 如何操作字符串常量 ...

  2. Quartz.Net系列(十四):详解Job中两大特性(DisallowConcurrentExecution、PersistJobDataAfterExecution)

    1.DisallowConcurrentExceution 从字面意思来看也就是不允许并发执行 简单的演示一下 [DisallowConcurrentExecution] public class T ...

  3. Python读取文件基本方法

    在日常开发过程中,经常遇到需要读取配置文件,这边就涉及到一个文本读取的方法. 这篇文章主要以Python读取文本的基础方法为本,添加读取整篇文本返回字符串,读取键值对返回字典,以及读取各个项返回列表的 ...

  4. 手写简易SpringMVC

    手写简易SpringMVC 手写系列框架代码基于普通Maven构建,因此在手写SpringMVC的过程中,需要手动的集成Tomcat容器 必备知识: Servlet相关理解和使用,Maven,Java ...

  5. 一分钟部署nacos

    第一步:下载nacos包 https://github.com/alibaba/nacos/releases  D:\testNacos\nacos-server-1.3.0\nacos\bin 最后 ...

  6. java中int相除取小数点后两位或限定位数

    java 两个整数相除保留两位小数: http://blog.sina.com.cn/s/blog_624d755d0101cvuq.html java中,当两个整数相除时,由于小数点以后的数字会被截 ...

  7. Python Ethical Hacking - WEB PENETRATION TESTING(3)

    CRAWLING SUMMARY Our crawler so far can guess: Subdomains. Directories. Files. Advantages: ->Disc ...

  8. mysql数据delete后的数据恢复

    误删除了一个订单,订单号为:D200711008, 现根据binlog对该订单数据进行恢复. 1. 查看binlog日志, 取最新的一个 mysql-bin.000635 show binary lo ...

  9. 数据治理工具调研之DataHub

    1.项目简介 Apache Atlas是Hadoop社区为解决Hadoop生态系统的元数据治理问题而产生的开源项目,它为Hadoop集群提供了包括数据分类.集中策略引擎.数据血缘.安全和生命周期管理在 ...

  10. DJANGO-天天生鲜项目从0到1-002-用户模块-注册

    本项目基于B站UP主‘神奇的老黄’的教学视频‘天天生鲜Django项目’,视频讲的非常好,推荐新手观看学习 https://www.bilibili.com/video/BV1vt41147K8?p= ...