Python通过文本和图片生成词云图
作者:djl_djl 发布时间:2023-08-03 09:39:35
标签:Python,文本,图片,词云,图
使用现有的txt文本和图片,就可以用wordcloud包生成词云图。大致步骤是:
1、读取txt文本并简单处理;
2、读取图片,以用作背景;
3、生成词云对象,保存为文件。
需要用到3个库:jieba(用于分割文本为词语)、imageio(用于读取图片)、wordcloud(功能核心,用于生成词云)。
我用简历和我的照片,生成了一个词云图:
代码如下:
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')
来源:https://www.cnblogs.com/djlbolgs/p/12912625.html


猜你喜欢
- 有过一定的 Python 经验的开发者都知道,当引入第三方包时,我们常常会使用 pip install 命令来下载并导入包。那么,如何写一个
- 问题描述单例数据库模式中,后端高并发请求多(读多写少),导致数据库压力过大,关键接口响应变慢,严重影响体验。需求减少接口的响应时间。寻找解决
- iou33449999 文:一个链接 一个层 一个onMouseOver 一个onMouseOut然后这个层就会在onMouseOver这个
- 本文为大家分享了mysql 5.6.23 安装配置教程,供大家参考,具体内容如下1 下载mysql2 安装mysql3 配置环境变量 &nb
- 序言本文所提及的VTD-XML并非本文作者原创,作者只是对它进行介绍。问题通常当我们提起XML的使用时,最头痛的部分便是XML的verbos
- 了解blockchain的概念很简单(区块链,交易链块):它是分布式的(即不是放置在同一台机器上,不同的网络设备上的)数据库支持主办记录日益
- 前言:决策树是梯度提升机和随机森林的基本构建块,在学习这些模型的工作原理和模型可解释性时,可视化决策树是一个非常有帮助。不过,当前的可视化包
- 在 Python 2.5 中, with 关键字被加入。它将常用的 try ... except ... finally ... 模式很方便
- 定时任务:1、 线程睡眠函数 sleep() ——粗暴!一直占有 CPU 资源,导致后续操作无法执行2、 threading.Timer(1
- 本系列文章一直所没有触及的就是有关”还原(Restore)”的话题,因为一旦牵扯到这个话题就会涉及大量的误区,多到我无法通过一篇文章说完的地
- 1、运算概念的理解运算(Operation)是操作逻辑的抽象运算体现一种操作逻辑,在广义角度来说任何程序都是一种运算Python解释器通过保
- 利用PHP中的thinkphp5进行项目开发,将view一道项目跟目录下进入到/www/wwwroot/xxxx/application/c
- Mysql Work Space右键新建的数据库BMI,设置为此次连接的默认数据库,接下来的所有操作都将在这个数据库下进行将bmi下拉单展开
- PyAutoGUI是一个Python语言的键鼠自动化库,简单来说和按键精灵的功能一样。但是因为是Python的类库,所以可以使用Python
- 前言最近几天,研究了一下一直很好奇的爬虫算法。这里写一下最近几天的点点心得。下面进入正文:你可能需要的工作环境:Python 3.6官网下载
- 最近在用python写接口的测试程序,期间用到解析字典获取某个key的value,由于多个接口返回的字典格式不是固定的并存在多层嵌套的情况。
- Pycharm默认可以识别py脚本中的SQL语句,本身很不错,但当SQL拼接时就显示的代码特别难看,找了好久,终于知道怎么关闭SQL识别功能
- 一、自定义分页1、基础版自定义分页data = []for i in range(1, 302): tmp = {"i
- 如何用SysOjects来获知数据库的信息?SysObjects中就保存了数据库中所有对象的信息,如:SELECT * FROM SysOb
- 多表连接的基本语法多表连接,就是将几张表拼接为一张表,然后进行查询select 字段1, 字段2, ...from 表1 {inner|li