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复制目录结构脚本代码分享
Mar 06 Python
python使用电子邮件模块smtplib的方法
Aug 28 Python
利用Pycharm断点调试Python程序的方法
Nov 29 Python
pycharm debug功能实现跳到循环末尾的方法
Nov 29 Python
python-itchat 统计微信群、好友数量,及原始消息数据的实例
Feb 21 Python
利用python脚本如何简化jar操作命令
Feb 24 Python
Python调用钉钉自定义机器人的实现
Jan 03 Python
Python实现栈的方法详解【基于数组和单链表两种方法】
Feb 22 Python
浅谈pytorch中的BN层的注意事项
Jun 23 Python
Django Model层F,Q对象和聚合函数原理解析
Nov 12 Python
pycharm进入时每次都是insert模式的解决方式
Feb 05 Python
教你怎么用Python生成九宫格照片
May 20 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 连接mssql数据库 初学php笔记
2010/03/01 PHP
php smarty 二级分类代码和模版循环例子
2011/06/16 PHP
在PHP程序中使用Rust扩展的方法
2015/07/03 PHP
javascript 字符 Escape,encodeURI,encodeURIComponent
2009/07/09 Javascript
需要做特殊处理的DOM元素属性的访问
2010/11/05 Javascript
javascript中用星号表示预录入内容的实现代码
2011/01/08 Javascript
JavaScript 一道字符串分解的题目
2011/08/03 Javascript
jQuery中setTimeout的几种使用方法小结
2013/04/07 Javascript
jquery淡入淡出效果简单实例
2016/01/14 Javascript
easyui window refresh 刷新两次的解决方法(推荐)
2016/05/18 Javascript
js实现手机拍照上传功能
2017/01/17 Javascript
Bootstrap框架安装使用详解
2017/01/21 Javascript
JavaScript中document.referrer的用法详解
2017/07/04 Javascript
js实现图片旋转 js滚动鼠标中间对图片放大缩小
2017/07/05 Javascript
nodejs Assert中equal(),strictEqual(),deepEqual(),strictDeepEqual()比较
2017/09/18 NodeJs
AngularJS实现的简单拖拽功能示例
2018/01/02 Javascript
node微信开发之获取access_token+自定义菜单
2019/03/17 Javascript
TypeScript 运行时类型检查补充工具
2020/09/28 Javascript
Python基于jieba库进行简单分词及词云功能实现方法
2018/06/16 Python
对Python中数组的几种使用方法总结
2018/06/28 Python
详解python项目实战:模拟登陆CSDN
2019/04/04 Python
Python调用钉钉自定义机器人的实现
2020/01/03 Python
Python坐标轴操作及设置代码实例
2020/06/04 Python
python安装后的目录在哪里
2020/06/21 Python
python 进程池pool使用详解
2020/10/15 Python
matplotlib绘制鼠标的十字光标的实现(自定义方式,官方实例)
2021/01/10 Python
使用css3制作登录表单的步骤
2014/04/07 HTML / CSS
什么是封装
2013/03/26 面试题
行政经理的岗位职责
2013/11/23 职场文书
人事专员岗位职责范本
2014/03/04 职场文书
优秀学生干部个人事迹材料
2014/06/02 职场文书
2015年基层党建工作汇报材料
2015/06/25 职场文书
python源码剖析之PyObject详解
2021/05/18 Python
Node实现搜索框进行模糊查询
2021/06/28 Javascript
Flutter集成高德地图并添加自定义Maker的实践
2022/04/07 Java/Android
windows10 家庭版下FTP服务器搭建教程
2022/08/05 Servers