Python制作词云的方法


Posted in Python onJanuary 03, 2018

需求:

看到朋友圈有人发词云照片,感觉自己也可以玩一玩,于是乎借助wordcloud实现功能。

环境:

MacOS 10.12 +Python 2.7 +Wordcloud
Windows通用

准备:

安装wordcloud

$ pip install wordcloud

SIP功能是Apple在OSX上推出的系统完整性保护功能,新版本的macOS直接用pip安装报错,在不关闭SIP功能的前提下,可以使用

$ pip install wordcloud --user -U

某些情况还会提示错误,需要安装VS for Python,直接上官网下载安装即可。

实现:

源码

#! /usr/bin/env python

# import
from os import path
from PIL import Image
import numpy as np
import matplotlib.pyplot as plt
from wordcloud import WordCloud, STOPWORDS

# current path
d = path.dirname(__file__)

# Read the whole text.
text = open(path.join(d, 'test.txt')).read()

# read the mask image
test_mask = np.array(Image.open(path.join(d, "test_mask.png")))

stopwords = set(STOPWORDS)
stopwords.add("said")

# setting
wc = WordCloud(background_color="black", max_words=2000, mask=test_mask,
        stopwords=stopwords)

# generate word cloud
wc.generate(text)

# plot and show
plt.imshow(wc, interpolation='bilinear')
plt.axis("off")
plt.figure()
plt.imshow(test_mask, cmap=plt.cm.gray, interpolation='bilinear')
plt.axis("off")
plt.show()

# store to file
wc.to_file(path.join(d, "test.png"))

辅助文件

test_mask.png

Python制作词云的方法

test.txt

The list of big's prior run-ins with the far-right fringe is long and varied. He tweeted fake crime statistics spread by racists to paint black cans as violent, then defended them as credible. He sparked a firestorm last year when he declined to renounce

效果图

Python制作词云的方法

其它说明:

1.文档可以是任意英文txt文件,以上的是网络上英文新闻中的一小段,仅起示例作用。
2.关于中文支持,有多种方法,主要就是分词的问题,这里不讨论了。
3.我不清楚许多人说的定制是什么意思,因为如果想要自己任意想要的形状的话,我觉得用PS做一个png图可以达到同样的效果,经测试也没有发现问题。
4.写的第一篇文章,不足之处欢迎来喷,毕竟我是要学习的。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python统计字符串中指定字符出现次数的方法
Apr 04 Python
Python基于DES算法加密解密实例
Jun 03 Python
Python将阿拉伯数字转换为罗马数字的方法
Jul 10 Python
Python学习小技巧之列表项的拼接
May 20 Python
Python通过Django实现用户注册和邮箱验证功能代码
Dec 11 Python
python3.6+django2.0开发一套学员管理系统
Mar 03 Python
对numpy中的数组条件筛选功能详解
Jul 02 Python
Django配置celery(非djcelery)执行异步任务和定时任务
Jul 16 Python
Python使用分布式锁的代码演示示例
Jul 30 Python
python的concat等多种用法详解
Nov 28 Python
python爬虫模拟浏览器的两种方法实例分析
Dec 09 Python
Python虚拟环境virtualenv创建及使用过程图解
Dec 08 Python
Python读取Json字典写入Excel表格的方法
Jan 03 #Python
python基于ID3思想的决策树
Jan 03 #Python
python遍历文件夹下所有excel文件
Jan 03 #Python
Python将多份excel表格整理成一份表格
Jan 03 #Python
Python将多个excel文件合并为一个文件
Jan 03 #Python
python中的字典操作及字典函数
Jan 03 #Python
Python将多个excel表格合并为一个表格
Feb 22 #Python
You might like
php去除头尾空格的2种方法
2015/03/16 PHP
浅析Laravel5中队列的配置及使用
2016/08/04 PHP
yii2-GridView在开发中常用的功能及技巧总结
2017/01/07 PHP
laravel配置Redis多个库的实现方法
2019/04/10 PHP
ThinkPHP6.0如何利用自定义验证规则规范的实现登陆
2020/12/16 PHP
javascript之锁定表格栏位
2007/06/29 Javascript
javascript  Error 对象 错误处理
2008/05/18 Javascript
JS解析XML的实现代码
2009/11/12 Javascript
善用事件代理,警惕闭包的性能陷阱。
2011/01/20 Javascript
jQuery EasyUI API 中文文档 - Draggable 可拖拽
2011/09/29 Javascript
原生javascript实现DIV拖拽并计算重复面积
2015/01/02 Javascript
在页面中输出当前客户端时间javascript实例代码
2016/03/02 Javascript
javascript将中国数字格式转换成欧式数字格式的简单实例
2016/08/02 Javascript
理解AngularJs篇:30分钟快速掌握AngularJs
2016/12/23 Javascript
jquery做个日期选择适用于手机端示例
2017/01/10 Javascript
深入探究angular2 UI组件之primeNG用法
2017/07/26 Javascript
react-native-video实现视频全屏播放的方法
2018/03/19 Javascript
Vue.js 实现微信公众号菜单编辑器功能(二)
2018/05/08 Javascript
通过jquery.cookie.js实现记住用户名、密码登录功能
2018/06/20 jQuery
vue实现标签云效果的方法详解
2019/08/28 Javascript
JS实现点星星消除小游戏
2020/03/24 Javascript
Python实现在线音乐播放器
2017/03/03 Python
python3转换code128条形码的方法
2019/04/17 Python
python绕过图片滑动验证码实现爬取PTA所有题目功能 附源码
2021/01/06 Python
使用HTML5 Canvas绘制圆角矩形及相关的一些应用举例
2016/03/22 HTML / CSS
Chain Reaction Cycles俄罗斯:世界上最大的在线自行车商店
2019/08/27 全球购物
小学教师的个人自我鉴定
2013/10/24 职场文书
中国央视网签名寄语
2014/01/18 职场文书
最新大学生创业计划书写作攻略
2014/04/02 职场文书
文明和谐家庭事迹材料
2014/05/18 职场文书
安全生产目标管理责任书
2014/07/25 职场文书
民事诉讼代理委托书
2014/10/08 职场文书
党员群众路线整改措施及今后努力方向
2014/10/28 职场文书
滴水洞导游词
2015/02/10 职场文书
2015年数学教研工作总结
2015/07/22 职场文书
世界各国短波电台对东亚播送时间频率表(SW)
2021/06/28 无线电