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

https://wordart.com/

图悦

http://www.picdata.cn/indexb.php

worditout

https://worditout.com/word-cloud/create

WordCloud 简介的更多相关文章

  1. 词云wordcloud入门示例

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

  2. [python] 基于词云的关键词提取:wordcloud的使用、源码分析、中文词云生成和代码重写

    1. 词云简介 词云,又称文字云.标签云,是对文本数据中出现频率较高的“关键词”在视觉上的突出呈现,形成关键词的渲染形成类似云一样的彩色图片,从而一眼就可以领略文本数据的主要表达意思.常见于博客.微博 ...

  3. Python第三方库wordcloud(词云)快速入门与进阶

    前言: 笔主开发环境:Python3+Windows 推荐初学者使用Anaconda来搭建Python环境,这样很方便而且能提高学习速度与效率. 简介: wordcloud是Python中的一个小巧的 ...

  4. 文本处理之可视化wordcloud

    什么是词云 词云又叫文字云,是对文本数据中出现频率较高的“关键词”在视觉上的突出呈现,形成关键词的渲染形成类似云一样的彩色图片,从而一眼就可以领略文本数据的主要表达意思. 准备工作: python开发 ...

  5. pyinstaller和wordcloud和jieba的使用案列

    一.pyinstaller库 1.简介 pyinstaller库:将脚本程序转变为可执行(.exe)格式的第三方库 注意:需要在.py文件所在目录进行以下命令,图标扩展名是.ico 2.格式: pyi ...

  6. Python:wordcloud

    wordcloud官方文档 1.简介 wordcloud是优秀的词云展示的第三方库 2.导入模块 import wordcloud 3.wordcloud对象初始化 以下参数值均为官方文档给出的默认值 ...

  7. ASP.NET Core 1.1 简介

    ASP.NET Core 1.1 于2016年11月16日发布.这个版本包括许多伟大的新功能以及许多错误修复和一般的增强.这个版本包含了多个新的中间件组件.针对Windows的WebListener服 ...

  8. MVVM模式和在WPF中的实现(一)MVVM模式简介

    MVVM模式解析和在WPF中的实现(一) MVVM模式简介 系列目录: MVVM模式解析和在WPF中的实现(一)MVVM模式简介 MVVM模式解析和在WPF中的实现(二)数据绑定 MVVM模式解析和在 ...

  9. Cassandra简介

    在前面的一篇文章<图形数据库Neo4J简介>中,我们介绍了一种非常流行的图形数据库Neo4J的使用方法.而在本文中,我们将对另外一种类型的NoSQL数据库——Cassandra进行简单地介 ...

随机推荐

  1. fileinput模块可以循环一个或多个文本文件的内容

    fileinput模块可以循环一个或多个文本文件的内容. [默认格式] fileinput.input (files=None, inplace=False, backup='', bufsize=0 ...

  2. Win7 Wifi 老断线

    在cmd命令窗口 netsh wlan set autoconfig enabled=no interface="无线网络连接" 此时你再来查看Win7系统任务栏处的网络菜单中查找 ...

  3. mysql 锁 事务隔离级别

    主题 最近在看mysql相关的书籍.实验了一些内容.分享一下,主要是关于事务隔离级别(read-committed和repeatable-read)和锁相关的. 很多网上文章上都能搜索到 read-c ...

  4. HAVING COUNT(*) > 1的用法和理解

    HAVING COUNT(*) > 1的用法和理解 作用是保留包含多行的组. SELECT class.STUDENT_CODE FROM crm_class_schedule class GR ...

  5. AngularJS与服务器交互(4)

    转自:http://itindex.net/detail/50919-angularjs-%E6%9C%8D%E5%8A%A1%E5%99%A8-%E4%BA%A4%E4%BA%92 对于AJAX应用 ...

  6. 我的MBTI性格测试

    写在前面: 很多人争论MBTI靠谱不靠谱.一个人的性格肯定不能只用这么几个维度就能描述的,一个人的性格也肯定不是通过这么几个问题就能测出来的,一个人的性格也肯定不是一成不变的,所以MBTI的准确度肯定 ...

  7. shiro 权限集成 sessionManager 配置 学习记录(三)

    1.shiro配置文件增加sessionManager管理 <!-- 6.shiro结合Session会话管理器 start --> <bean id="sessionMa ...

  8. 由浅到深理解ROS(5)- launch启动文件的理解与编写

    ROS提供了一个同时启动节点管理器(master)和多个节点的途径,即使用启动文件(launch file).事实上,在ROS功能包中,启动文件的使用是非常普遍的.任何包含两个或两个以上节点的系统都可 ...

  9. 关于select Count()的使用和性能问题

    比如Count(*) FROM E_Table WHERE [date] > '2008-1-1' AND istrue = 0 由于操作的数据比较大(400万以上),所以使用了两个数据库,一个 ...

  10. Java程序员常用工具类库 - 目录

    有人说当你开始学习Java的时候,你就走上了一条不归路,在Java世界里,包罗万象,从J2SE,J2ME,J2EE三大平台,到J2EE中的13中核心技术,再到Java世界中万紫千红的Framework ...