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模块基础(一)
模块 简介 在计算机程序的开发过程中,随着程序代码越写越多,在一个文件里代码就会越来越长,越来越不容易维护. 为了编写可维护的代码,我们把很多函数分组,分别放到不同的文件里,这样,每个文件包含的代码就 ...
随机推荐
- 解析IFC数据并转成json格式
{ "com.bim.ifc.ifc2x3.ifc2x3tc1.IfcBuilding (#104)-": [{ "objKey": "GlobalI ...
- win10 requireAdministrator设置开机自启动无效的解决方案
开发了一个wpf程序,需要管理员权限,设置了requireAdministrator 同时需要开机自启动,所以添加了注册表: using (RegistryKey key = Registry.Cur ...
- bzoj2751 容易题
传送门 题目 为了使得大家高兴,小Q特意出个自认为的简单题(easy)来满足大家,这道简单题是描述如下: 有一个数列A已知对于所有的A[i]都是1~n的自然数,并且知道对于一些A[i]不能取哪些值,我 ...
- 几种jar转exe方法的比较
原摘自:https://blog.csdn.net/uikoo9/article/details/7458666 几种jar转exe方法的比较 2012年04月13日 17:33:07 阅读数:153 ...
- Entity Framework Code-First(19):Seed Data
Seed Database in Code-First: You can insert data into your database tables during the database initi ...
- 通过ADB命令行卸载或删除你的Android设备中的应用(转载)
转自:http://mytiankong.com/?p=11755 如果你对你的Android设备在与命令行的交互间有一定的兴趣,那你可能想学习一些使用ADB卸载设备中已安装应用的技巧.为了使这种方法 ...
- EIP权限工作流升级说明-2019/3/12
流程配置界面,允许流程处理按钮名称自定义:适用于流程过程中显示不同字面意思.流程节点按钮配置界面 流程处理过程中
- 动态变更GridView控件列名
近段时间,确是很多专案要写,客户的个性化要求也越来越多.举个例子吧,就是从数据库取出来的字段名,在显示在GridView时,需要全部更为另外一个名称.下面的样例,并非是专案的内容,而是Insus.NE ...
- iOS 12中无法获取WiFi的SSID了?
1.现象描述 2018年苹果升级iOS12之后,没有办法获取wifi名称等信息. 2.获取wifi信息 2.1 获取代码 /************ 控制器的view 加载完毕 的时候调用 ***** ...
- 「BZOJ 3270」博物馆「高斯消元」
应该算高斯消元经典题了吧. 题意:一个无向连通图,有两个人分别在\(s,t\),若一个人在\(u\),每一分钟有\(p[u]\)的概率不动,否则随机前往一个相邻的结点,求在每个点相遇的概率 题解: 首 ...