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中使用dom模块生成XML文件示例
Apr 05 Python
python获取程序执行文件路径的方法(推荐)
Apr 26 Python
python 执行shell命令并将结果保存的实例
May 11 Python
python实现图书借阅系统
Feb 20 Python
Python二叉树的镜像转换实现方法示例
Mar 06 Python
对python中的float除法和整除法的实例详解
Jul 20 Python
Python3.x+pyqtgraph实现数据可视化教程
Mar 14 Python
Python unittest单元测试框架及断言方法
Apr 15 Python
Python HTMLTestRunner库安装过程解析
May 25 Python
python中plt.imshow与cv2.imshow显示颜色问题
Jul 16 Python
python 根据列表批量下载网易云音乐的免费音乐
Dec 03 Python
去除python中的字符串空格的简单方法
Dec 22 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
关于mysql字符集设置了character_set_client=binary 在gbk情况下会出现表描述是乱码的情况
2013/01/06 PHP
php将url地址转化为完整的a标签链接代码(php为url地址添加a标签)
2014/01/17 PHP
PHP源码分析之变量的存储过程分解
2014/07/03 PHP
PHP的魔术常量__METHOD__简介
2014/07/08 PHP
iframe子页面与父页面在同域或不同域下的js通信
2014/05/07 Javascript
从零学JS之你需要了解的几本书
2014/05/19 Javascript
js调试系列 控制台命令行API使用方法
2014/06/18 Javascript
推荐6款基于jQuery实现图片效果插件
2014/12/07 Javascript
jquery模拟进度条实现方法
2015/08/03 Javascript
JS显示日历和天气的方法
2016/03/01 Javascript
百度地图给map添加右键菜单(判断是否为marker)
2016/03/04 Javascript
JavaScript隐式类型转换
2016/03/15 Javascript
基于Echarts 3.19 制作常用的图形(非静态)
2016/05/19 Javascript
AngularJS 中的Promise --- $q服务详解
2016/09/14 Javascript
谈谈target=_new和_blank的不同之处
2016/10/25 Javascript
解决bootstrap下拉菜单点击立即隐藏bug的方法
2017/06/13 Javascript
Vue2.0实现将页面中表格数据导出excel的实例
2017/08/09 Javascript
老生常谈javascript的面向对象思想
2017/08/22 Javascript
继承行为在 ES5 与 ES6 中的区别详解
2019/12/24 Javascript
js表达式与运算符简单操作示例
2020/02/15 Javascript
swiper自定义分页器的样式
2020/09/14 Javascript
Python实现多线程的两种方式分析
2018/08/29 Python
使用tensorflow实现线性svm
2018/09/07 Python
详解Python解决抓取内容乱码问题(decode和encode解码)
2019/03/29 Python
Python数据类型之String字符串实例详解
2019/05/08 Python
python3实现单目标粒子群算法
2019/11/14 Python
python Scrapy爬虫框架的使用
2021/01/21 Python
html5 offlline 缓存使用示例
2013/06/24 HTML / CSS
乐高积木玩具美国官网:LEGO Shop US
2016/09/16 全球购物
LG西班牙网上商店:Tienda LG Online Es
2019/07/30 全球购物
培训心得体会
2013/12/29 职场文书
《青蛙看海》教学反思
2014/04/23 职场文书
2015清明节祭奠英烈寄语大全
2015/03/04 职场文书
从事会计工作年限证明
2015/06/23 职场文书
vue如何清除浏览器历史栈
2022/05/25 Vue.js
Python TypeError: ‘float‘ object is not subscriptable错误解决
2022/12/24 Python