WordCloud 简介
WordCloud 简介
GitHub
GitHub:https://github.com/amueller/word_cloud
example:https://github.com/amueller/word_cloud/tree/master/examples
wordcloud 是什么?
词云图
说wordcloud 之前我们要先了解一个名词,词云图 ,什么是词云图呢?
词云图,也叫文字云,是对文本中出现频率较高的“关键词”予以视觉化的展现,词云图过滤掉大量的低频低质的文本信息,使得浏览者只要一眼扫过文本就可领略文本的主旨。
WordCloud
WordCloud 是一款python环境下的词云图工具包,同时支持python2和python3,能通过代码的形式把关键词数据转换成直观且有趣的图文模式。
安装
pip默认安装方式
pip install wordcloud
如果是使用conda的方式安装,则使用以下命令安装
conda install -c conda-forge wordcloud
wordcloud输入第三方安装包,也可以下载whl文件到本地然后本地安装
1、先检查自己使用的python是哪个版本的
python --version Python 3.7.1
2、打开非正式第三方whl文件包的网站 https://www.lfd.uci.edu/~gohlke/pythonlibs/ ,下载对应版本的安装包,我这里是python3.7的windows版本,所以选择最后一个
3、下载完成以后打开cmd,用pip安装wheel 执行命令
pip install wheel
4、cmd切换到刚才下载的 wordcloud-1.5.0-cp37-cp37m-win_amd64.whl
目录,然后执行命令
pip install wordcloud-1.5.0-cp37-cp37m-win_amd64.whl
如图,证明安装成功
使用方法
简单实例讲解:
with open("tmp/tag.txt", encoding="utf-8") as file:
# 数据文件
txt = file.read()
# 如果数据文件中包含的有中文的话,font_path必须指定字体,否则中文会乱码
# collocations:是否包括两个词的搭配,默认为True,如果为true的时候会有
# 重复的数据,这里我不需要重复数据,所以设置为False
# width 幕布的宽度,height 幕布的高度
# max_words 要显示的词的最大个数
# generate 读取文本文件
wordcloud = WordCloud(font_path="C:/Windows/Fonts/simfang.ttf",
collocations=False,
background_color="black",
width=800,
height=600,
max_words=100).generate(txt)
# 生成图片
image = wordcloud.to_image()
# 展示图片
image.show()
# 写入文件
wordcloud.to_file("tmp/tag.jpg")
更多官方示例讲解
https://github.com/amueller/word_cloud/blob/master/examples/a_new_hope.py
参数讲解
详细参数讲解请查看 https://www.yuque.com/darren-irbls/python/pr2zc5
属性 |
数据类型|默认值 |
解析 |
font_path |
string |
字体路径 windows:C:/Windows/Fonts/ Linux: /usr/share/fonts |
width |
int (default=400) |
输出的画布宽度,默认为400像素 |
height |
int (default=200) |
输出的画布高度,默认为200像素 |
prefer_horizontal |
float (default=0.90) |
词语水平方向排版出现的频率,默认 0.9 所以词语垂直方向排版出现频率为0.1 |
mask |
nd-array or None (default=None) |
如果参数为空,则使用二维遮罩绘制词云 如果mask非空,设置的宽高值将被忽略 遮罩形状被 mask 取代 |
scale |
float (default=1) |
按照比例进行放大画布,如设置为1.5, 则长和宽都是原来画布的1.5倍 |
min_font_size |
int (default=4) |
显示的最小的字体大小 |
font_step |
int (default=1) |
字体步长,如果步长大于1,会加快运算 但是可能导致结果出现较大的误差 |
max_words |
number (default=200) |
要显示的词的最大个数 |
stopwords |
set of strings or None |
设置需要屏蔽的词,如果为空, 则使用内置的STOPWORDS |
background_color |
color value default=”black” |
背景颜色 |
max_font_size |
int or None default=None |
显示的最大的字体大小 |
mode |
string (default=”RGB”) |
当参数为“RGBA”并且background_color 不为空时,背景为透明 |
relative_scaling |
float (default=.5) |
词频和字体大小的关联性 |
color_func |
callable, default=None |
生成新颜色的函数,如果为空, 则使用 self.color_func |
regexp |
string or None (optional) |
使用正则表达式分隔输入的文本 |
collocations |
bool, default=True |
是否包括两个词的搭配 |
colormap |
string or matplotlib colormap default=”viridis” |
给每个单词随机分配颜色, 若指定color_func,则忽略该方法 |
random_state |
int or None |
为每个单词返回一个PIL颜色 |
在线词云图工具
wordart
图悦
http://www.picdata.cn/indexb.php
worditout
https://worditout.com/word-cloud/create
WordCloud 简介的更多相关文章
- 词云wordcloud入门示例
整体简介: 词云图,也叫文字云,是对文本中出现频率较高的“关键词”予以视觉化的展现,词云图过滤掉大量的低频低质的文本信息,使得浏览者只要一眼扫过文本就可领略文本的主旨. 基于Python的词云生成类库 ...
- [python] 基于词云的关键词提取:wordcloud的使用、源码分析、中文词云生成和代码重写
1. 词云简介 词云,又称文字云.标签云,是对文本数据中出现频率较高的“关键词”在视觉上的突出呈现,形成关键词的渲染形成类似云一样的彩色图片,从而一眼就可以领略文本数据的主要表达意思.常见于博客.微博 ...
- Python第三方库wordcloud(词云)快速入门与进阶
前言: 笔主开发环境:Python3+Windows 推荐初学者使用Anaconda来搭建Python环境,这样很方便而且能提高学习速度与效率. 简介: wordcloud是Python中的一个小巧的 ...
- 文本处理之可视化wordcloud
什么是词云 词云又叫文字云,是对文本数据中出现频率较高的“关键词”在视觉上的突出呈现,形成关键词的渲染形成类似云一样的彩色图片,从而一眼就可以领略文本数据的主要表达意思. 准备工作: python开发 ...
- pyinstaller和wordcloud和jieba的使用案列
一.pyinstaller库 1.简介 pyinstaller库:将脚本程序转变为可执行(.exe)格式的第三方库 注意:需要在.py文件所在目录进行以下命令,图标扩展名是.ico 2.格式: pyi ...
- Python:wordcloud
wordcloud官方文档 1.简介 wordcloud是优秀的词云展示的第三方库 2.导入模块 import wordcloud 3.wordcloud对象初始化 以下参数值均为官方文档给出的默认值 ...
- ASP.NET Core 1.1 简介
ASP.NET Core 1.1 于2016年11月16日发布.这个版本包括许多伟大的新功能以及许多错误修复和一般的增强.这个版本包含了多个新的中间件组件.针对Windows的WebListener服 ...
- MVVM模式和在WPF中的实现(一)MVVM模式简介
MVVM模式解析和在WPF中的实现(一) MVVM模式简介 系列目录: MVVM模式解析和在WPF中的实现(一)MVVM模式简介 MVVM模式解析和在WPF中的实现(二)数据绑定 MVVM模式解析和在 ...
- Cassandra简介
在前面的一篇文章<图形数据库Neo4J简介>中,我们介绍了一种非常流行的图形数据库Neo4J的使用方法.而在本文中,我们将对另外一种类型的NoSQL数据库——Cassandra进行简单地介 ...
随机推荐
- 读取resource下文件
ArrayList<PatrolOper> patrolOpers = new ArrayList<>(); String jsonData = null; File json ...
- JQuery easyUi datagrid 中 editor 动态设置最大值最小值
前言 近来项目中使用到 easyui 来进行页面设计,感觉挺方便的,但是网上除了api外,其他有价值的资料比较少,故在此分享一点经验,供大家参考. 问题 JQuery easyUi datagri ...
- 当一个项目中同时存在webroot和webcontext时
当一个项目中同时存在webroot和webcontext时,注意一定要删除那些没在使用的.还有要发布其中一个想要的目录到服务器中,具体方法是 选择相应工程-----properties-----de ...
- avalon1.3的新特性预览
avalon1.2的性能优化风暴很快就告一段落,入职也快一个月了,许多乱七八糟的事也少了下来,估计未来一个月会有许多好东呈现给大家. 首先是一个性能检测工具.由于MVVM是将原本由人脑干的事,转到各种 ...
- PHP - declare tick
今天看php手册,结构流程控制语句,翻到个没见过的关键字declare(申明的意思).于是稍稍看了下. 大概意思是:定义一段代码.关于他合适执行,怎么执行完全依照他的参数. 反正不知道什么意思.先来一 ...
- python开源项目Scrapy抓取文件乱码解决
scrapy进行页面抓去的时候,保存的文件出现乱码,经过分析是编码的原因,只需要把编码转换为utf-8即可,代码片段 ...... import chardet ...... cont ...
- nginx源码完全注释(1)ngx_alloc.h / ngx_alloc.c
首先看 ngx_alloc.h 文件,主要声明或宏定义了 ngx_alloc,ngx_calloc,ngx_memalign,ngx_free. /* * Copyright (C) Igor Sys ...
- iOS开发时间控件怎么强制24小时制(小技巧)
1)当你的format格式是 NSDateFormatter* dateFormatter = [[[NSDateFormatter alloc] init] autorelease];[dateFo ...
- Python学习笔记_使用openpyxl操作Excel,在同一个文件里复制某一个sheet
应用场景:定制一个Excel模板文件,其中定义了一个模板Sheet,以此模板文件里的模板sheet为样例,制作报表,里面有不止一个模板样例Sheet 一.软件环境: 1.OS:Win10 64位 2. ...
- 如何将.pem转换为.crt和.key
如何将.pem转换为.crt和.key? 摘自: https://vimsky.com/article/3608.html 貔貅 技术问答 2017-10-08 23:11 certifica ...