Python通过文本和图片生成词云图


Posted in Python onMay 21, 2020

使用现有的txt文本和图片,就可以用wordcloud包生成词云图。大致步骤是:

1、读取txt文本并简单处理;

2、读取图片,以用作背景;

3、生成词云对象,保存为文件。

需要用到3个库:jieba(用于分割文本为词语)、imageio(用于读取图片)、wordcloud(功能核心,用于生成词云)。

我用简历和我的照片,生成了一个词云图:

Python通过文本和图片生成词云图

代码如下:

import jieba
import imageio
import wordcloud


# 读取txt文本
with open('resume.txt','r',encoding='utf-8') as f:
  text = f.read()

# 简单处理文本,删除空格等多余字符
text = text.replace(' ','').replace('\t','').replace('\n','')
# 使用jieba分隔词语
wordlist = jieba.lcut(text)  # ['aa','bb','cc'...]
# print(wordlist)
# 用空格连接各个词语,又形成一个大字符串
string = ' '.join(wordlist)  # 'aa bb cc'

# 读取图片
image = imageio.imread('ding.jpg')


# 生成词云图片
# 先实例化一个词云对象
wc = wordcloud.WordCloud(width=image.shape[0], # 词云图宽度同原图片宽度
            height=image.shape[1],
            background_color='white', # 背景颜色白色
            font_path='msyh.ttc', # 指定字体路径,微软雅黑,可从win自带的字体库中找
            mask=image,  # mask 指定词云形状图片,默认为矩形
            scale=3)  # 默认为1,越大越清晰
# 再给词云输入文字
wc.generate(string)
# 保存成文件
wc.to_file('wordcloud21.png')

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

Python 相关文章推荐
win系统下为Python3.5安装flask-mongoengine 库
Dec 20 Python
Python基于win32ui模块创建弹出式菜单示例
May 09 Python
基于python if 判断选择结构的实例详解
May 06 Python
django框架事务处理小结【ORM 事务及raw sql,customize sql 事务处理】
Jun 27 Python
python 将日期戳(五位数时间)转换为标准时间
Jul 11 Python
python爬虫 urllib模块发起post请求过程解析
Aug 20 Python
Python 文件数据读写的具体实现
Jan 24 Python
Python脚本去除文件的只读性操作
Mar 05 Python
用opencv给图片换背景色的示例代码
Jul 08 Python
Anaconda详细安装步骤图文教程
Nov 12 Python
Spy++的使用方法及下载教程
Jan 29 Python
Python time库的时间时钟处理
May 02 Python
解决在keras中使用model.save()函数保存模型失败的问题
May 21 #Python
Python 实现敏感目录扫描的示例代码
May 21 #Python
基于python检查矩阵计算结果
May 21 #Python
Django 解决由save方法引发的错误
May 21 #Python
Python OrderedDict字典排序方法详解
May 21 #Python
django中嵌套的try-except实例
May 21 #Python
Spark处理数据排序问题如何避免OOM
May 21 #Python
You might like
全国FM电台频率大全 - 28 甘肃省
2020/03/11 无线电
php将mysql数据库整库导出生成sql文件的具体实现
2014/01/08 PHP
php基础教程
2015/08/26 PHP
thinkphp项目部署到Linux服务器上报错“模板不存在”如何解决
2016/04/27 PHP
PHP 实现页面静态化的几种方法
2017/07/23 PHP
laravel 实现关闭CSRF(全部关闭、部分关闭)
2019/10/21 PHP
jQuery一步一步实现跨浏览器的可编辑表格,支持IE、Firefox、Safari、Chrome、Opera
2009/08/28 Javascript
JS简单的轮播的图片滚动实例
2013/06/17 Javascript
jquery获得option的值和对option进行操作
2013/12/13 Javascript
jQuery操作CheckBox的方法介绍(选中,取消,取值)
2014/02/04 Javascript
不要使用jQuery触发原生事件的方法
2014/03/03 Javascript
关于JavaScript的变量的数据类型的判断方法
2015/08/14 Javascript
jQuery学习笔记之入门
2016/12/14 Javascript
单击按钮发送验证码,出现倒计时的简单实例
2017/03/17 Javascript
ES6使用let命令更简单的实现块级作用域实例分析
2017/03/31 Javascript
详解AngularJS controller调用factory
2017/05/19 Javascript
完美解决axios在ie下的兼容性问题
2018/03/05 Javascript
d3.js实现自定义多y轴折线图的示例代码
2018/05/30 Javascript
python求pi的方法
2014/10/08 Python
Python实现根据日期获取当天凌晨时间戳的方法示例
2019/04/09 Python
python队列原理及实现方法示例
2019/11/27 Python
Python获取、格式化当前时间日期的方法
2020/02/10 Python
python数据预处理 :数据抽样解析
2020/02/24 Python
Python 无限级分类树状结构生成算法的实现
2021/01/21 Python
美国家用电器和电子产品商店:Abt
2016/09/06 全球购物
乌克兰珠宝大卖场:Zlato.ua
2020/09/27 全球购物
介绍一下Prototype的$()函数,$F()函数,$A()函数都是什么作用?
2014/03/05 面试题
竞聘演讲稿范文
2014/01/12 职场文书
《美丽的黄昏》教学反思
2014/02/28 职场文书
详细的本科生职业生涯规划范文
2014/09/16 职场文书
机关中层领导干部群众路线教育实践活动个人对照检查材料
2014/09/24 职场文书
2014大四本科生自我鉴定总结
2014/10/04 职场文书
2015年勤工助学工作总结
2015/04/29 职场文书
合作意向书怎么写
2019/06/24 职场文书
MySQL 可扩展设计的基本原则
2021/05/14 MySQL
cypress测试本地web应用
2022/06/01 Javascript