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 相关文章推荐
python 基础学习第二弹 类属性和实例属性
Aug 27 Python
Python中MYSQLdb出现乱码的解决方法
Oct 11 Python
在Windows系统上搭建Nginx+Python+MySQL环境的教程
Dec 25 Python
python+mysql实现学生信息查询系统
Feb 21 Python
selenium中get_cookies()和add_cookie()的用法详解
Jan 06 Python
Python进程的通信Queue、Pipe实例分析
Mar 30 Python
如何用Python 加密文件
Sep 10 Python
Python爬虫中Selenium实现文件上传
Dec 04 Python
python 实现百度网盘非会员上传超过500个文件的方法
Jan 07 Python
Jupyter安装拓展nbextensions及解决官网下载慢的问题
Mar 03 Python
PyTorch 实现L2正则化以及Dropout的操作
May 27 Python
pycharm代码删除恢复的方法
Jun 26 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
PHPCMS的使用小结
2010/09/20 PHP
for循环连续求和、九九乘法表代码
2012/02/20 PHP
php中常用的预定义变量小结
2012/05/09 PHP
php使用curl和正则表达式抓取网页数据示例
2014/04/13 PHP
PHP合并数组+号和array_merge的区别
2015/06/25 PHP
php读取出一个文件夹及其子文件夹下所有文件的方法示例
2017/06/15 PHP
this[] 指的是什么内容 讨论
2007/03/24 Javascript
JavaScript 5 新增 Array 方法实现介绍
2012/02/06 Javascript
浅谈javascript中return语句
2015/07/15 Javascript
javascript面向对象程序设计高级特性经典教程(值得收藏)
2016/05/19 Javascript
nodejs集成sqlite使用示例
2017/06/05 NodeJs
Vue 2.0的数据依赖实现原理代码简析
2017/07/10 Javascript
在ES5与ES6环境下处理函数默认参数的实现方法
2018/05/13 Javascript
Vue项目中最新用到的一些实用小技巧
2018/11/06 Javascript
vue中$nextTick的用法讲解
2019/01/17 Javascript
vue 项目 iOS WKWebView 加载
2019/04/17 Javascript
小程序如何在不同设备上自适应生成海报的实现方法
2019/08/20 Javascript
Python的Asyncore异步Socket模块及实现端口转发的例子
2016/06/14 Python
python并发编程之多进程、多线程、异步和协程详解
2016/10/28 Python
Python cookbook(数据结构与算法)找出序列中出现次数最多的元素算法示例
2018/03/15 Python
Linux下python制作名片示例
2018/07/20 Python
Python开发网站目录扫描器的实现
2019/02/21 Python
tensorflow之获取tensor的shape作为max_pool的ksize实例
2020/01/04 Python
美国女鞋品牌:naturalizer(娜然)
2016/08/01 全球购物
萨克斯第五大道精品百货店: Saks Fifth Avenue
2017/04/28 全球购物
有原因的手表:Flex Watches
2019/03/23 全球购物
新西兰Bookabach:查找全球度假屋
2020/12/03 全球购物
学生党支部先进事迹
2014/02/04 职场文书
关于建议书的格式范文
2014/05/20 职场文书
培训科主任岗位职责
2014/08/08 职场文书
国庆促销活动总结
2014/08/29 职场文书
县政府班子个人对照检查材料
2014/10/05 职场文书
2014年局领导班子自身建设情况汇报
2014/11/21 职场文书
小学班主任自我评价
2015/03/11 职场文书
2016年高校自主招生自荐信范文
2015/03/24 职场文书
2015年班组工作总结
2015/04/20 职场文书