python模块之wordcloud
wordcloud官方文档:
http://amueller.github.io/word_cloud/generated/wordcloud.WordCloud.html#wordcloud.WordCloud
英文直接用wordcloud就可以,如果是中文需要进行分词,我用了jieba分词,jieba分词处理中文可参考:https://github.com/fxsjy/jieba
实例:
from wordcloud import WordCloud
%matplotlib inline
import matplotlib.pyplot as plt with open("wordcloud_en.txt","r") as f:
text = f.read() wc = WordCloud() #生成词云对象
wc.generate(text) #将text添加到词云中
# print(wc.words_) #分词处理,统计词频
wc.to_file("wc.jpg") #词云统计成图片,保存到当前目录
plt.imshow(wc) #直接绘制到窗口上,和wc.jpg存图一致
plt.axis("off") #关闭坐标系
执行结果:
词云定制相关
from PIL import Image
import numpy as np
text_dict = {'Mom': 1.0, 'said': 0.7, 'take': 0.6, 'run rain': 0.6, 'time': 0.5, 'away': 0.5, 'rain': 0.3, 'stood': 0.3, 'day': 0.3, 'washing': 0.3, 'memories': 0.3, 'child': 0.3, 'young': 0.3, 'wet': 0.3, 'shopping': 0.2, 'Wal': 0.2, 'Mart': 0.2, 'pouring': 0.2, 'waited': 0.2, 'repeated': 0.2, 'honey': 0.2, 'minute': 0.2, 'soaked': 0.2, 'morning': 0.2, 'say': 0.2, 'us': 0.2, 'anything': 0.2, 'one': 0.2, 'moment': 0.2, 'needed': 0.2, 'ran': 0.2, 'cars': 0.2, 'got': 0.2, 'make': 0.2, 'every': 0.2, 'heaven': 0.2, 'must': 0.1, 'years': 0.1, 'old': 0.1, 'beautiful': 0.1, 'brown': 0.1, 'haired': 0.1, 'freckle': 0.1, 'faced': 0.1, 'image': 0.1, 'innocence': 0.1, 'outside': 0.1, 'kind': 0.1, 'gushes': 0.1, 'top': 0.1, 'gutters': 0.1, 'much': 0.1, 'hurry': 1, 'hit': 0.1, 'Earth': 3, 'flow': 4, 'spout': 0.1, 'awning': 0.1, 'inside': 0.1}
mask = np.array(Image.open("cat.jpg")) #打开图片并转换成数组类型
# wc2 = WordCloud(background_color="white",max_words=15,mask=mask) #背景颜色白色,最大词数是15,模板是mask
wc2 = WordCloud(background_color="white",mask=mask) #背景颜色白色,模板是mask wc2.generate_from_frequencies(text_dict) #字典类型的对象,所以用generate_from_frequencies plt.imshow(wc2)
plt.axis("off")
执行结果:
中文转换为词云
import jieba #使用该模块中的中文分词
with open("wordcloud_cn.txt","r") as f:
text = f.read()
# print(text)
# seg_list = jieba.cut(text,cut_all=True) #全模式切割,生成一个生成器对象
seg_list = jieba.cut(text,cut_all=False) #精确式切割,生成一个生成器对象,也可不添加cut_all,默认为False
example = " ".join(seg_list) #将对象通过join连接
# print(example)
wc3 = WordCloud(font_path=r"C:\Windows\Fonts\simsun.ttc") #中文要指定字体
wc3.generate(example)
plt.imshow(wc3)
plt.axis("off")
执行结果:

python模块之wordcloud的更多相关文章
- python模块大全
python模块大全2018年01月25日 13:38:55 mcj1314bb 阅读数:3049 pymatgen multidict yarl regex gvar tifffile jupyte ...
- Python数据可视化 -- Wordcloud
Python数据可视化 -- Wordcloud 安装 启动命令行,输入:pip install wordcloud word cloud 库介绍 及简单使用 wordcloud库,可以说是pytho ...
- 使用C/C++写Python模块
最近看开源项目时学习了一下用C/C++写python模块,顺便把学习进行一下总结,废话少说直接开始: 环境:windows.python2.78.VS2010或MingW 1 创建VC工程 (1) 打 ...
- Python模块之configpraser
Python模块之configpraser 一. configpraser简介 用于处理特定格式的文件,其本质还是利用open来操作文件. 配置文件的格式: 使用"[]"内包含 ...
- Python模块之"prettytable"
Python模块之"prettytable" 摘要: Python通过prettytable模块可以将输出内容如表格方式整齐的输出.(对于用Python操作数据库会经常用到) 1. ...
- python 学习第五天,python模块
一,Python的模块导入 1,在写python的模块导入之前,先来讲一些Python中的概念性的问题 (1)模块:用来从逻辑上组织Python代码(变量,函数,类,逻辑:实现一个功能),本质是.py ...
- windows下安装python模块
如何在windows下安装python模块 1. 官网下载安装包,比如(pip : https://pypi.python.org/pypi/pip#downloads) pip-9.0.1.tar. ...
- 安装第三方Python模块,增加InfoPi的健壮性
这3个第三方Python模块是可选的,不安装的话InfoPi也可以运行. 但是如果安装了,会增加InfoPi的健壮性. 目录 1.cchardet 自动检测文本编码 2.lxml 用于解析 ...
- Python基础篇【第5篇】: Python模块基础(一)
模块 简介 在计算机程序的开发过程中,随着程序代码越写越多,在一个文件里代码就会越来越长,越来越不容易维护. 为了编写可维护的代码,我们把很多函数分组,分别放到不同的文件里,这样,每个文件包含的代码就 ...
随机推荐
- CSS中cursor的pointer 与 hand(转)
CSS中cursor的pointer 与 hand 转载 2015年12月25日 16:18:36 标签: cursorpointer / cursorhand 1781 cursor:hand 与 ...
- CURD 操作 [1]
create创建新数据 首先在主目录下创建index.html,与index.php同级,插入以下代码 <meta charset="utf-8"> <form ...
- PCL — Point Pair Feature 中层次点云处理
博客转载自:http://www.cnblogs.com/ironstark/p/5971976.html 机器人视觉中有一项重要人物就是从场景中提取物体的位置,姿态.图像处理算法借助Deep Lea ...
- Ubuntu 添加用户到sudoers
ubuntu上的用户有时候需要用到管理员权限,可以通过修改 /etc/sudoers 文件内容添加用户权限. 操作方式 1. 首先以root进入系统打开文件 sudo vim /etc/sudoers ...
- Conda / Miniconda——软件包管理系统使用
conda是一个非常好的python包管理软件,但是它的Minicoda是一个非常好的生信软件包管理软件,更多conda介绍多google. Miniconda简直就是生信人的福音,尤其是像我这种传统 ...
- cs231n knn
# coding: utf-8 # In[19]: import random import numpy as np from cs231n.data_utils import load_CIFAR1 ...
- Oracle数据库之多表查询一
上一篇给大家介绍了数据的单表查询,相信大家对于单表的查询应该都有了一些了解.单表查询在数据库中的使用会有一些,但并不是很多,但是作为初学者,我们需要学习单表查询的思路.今天呢,我们为大家介绍一下数据库 ...
- 手把手教Android商业项目-即时通讯-i美聊
[课程概况] 手把手教你从无到有的完整实现一个Android商业项目,是目前整个市场上所没有的课程,废话不多说,请往下看. [项目概况] 项目名称:i美聊 所属领域:移动社交 即时通讯 代码行数: ...
- left join和right join、inner join 区别
left join(左联接) 返回包括左表中的所有记录和右表中联结字段相等的记录 right join(右联接) 返回包括右表中的所有记录和左表中联结字段相等的记录 inner join(等值连接) ...
- java24种设计模式
一.设计模式定义 设计模式(Design Pattern)是一套被反复使用.多数人知晓的.经过分类编目的.代码设计经验的总结,使用设计模式是为了可重用代码.让代码更容易被他人理解并且保证代码可靠性. ...