艺术与文本的交织:基于Python的jieba和wordcloud库实现华丽词云

简介: 艺术与文本的交织:基于Python的jieba和wordcloud库实现华丽词云

基于Python的jieba和wordcloud库实现华丽词云制作

效果展示:

准备工作:

安装jieba库和wordcloud库

jieba和wordcloud是两个在自然语言处理和数据可视化领域非常常用的Python库。

jieba库:

jieba是一个优秀的中文分词工具,它能够将一段中文文本切分成一个一个的词语。jieba库提供了多种分词模式和功能,包括精确模式、全模式、搜索引擎模式等。使用jieba库可以帮助你更好地处理中文文本,进行文本分析和挖掘。

wordcloud库:

wordcloud是一个用于生成词云图的库。词云图是以词语的重要性或频率为基础,通过字体大小和颜色的不同来展示词语的热度。wordcloud库可以根据给定的文本数据生成漂亮的词云图,使得文本中的关键词能够直观地展现出来。你可以自定义词云的形状、颜色、字体等参数。

这两个库结合起来,你可以使用jieba库对文本进行分词处理,然后利用wordcloud库生成词云图,从而实现对文本数据的可视化展示和分析。这对于文本挖掘、情感分析、舆情监控等任务非常有用。

修改源:

如果安装卡在最后阶段,安装不了,可使用这个修改源

pip install numpy -i https://pypi.tuna.tsinghua.edu.cn/simple

将上面的代码中的numpy改为jieba、wordcloud即可在终端命令行安装!

完整代码:

示例1:

import jieba
import wordcloud
f = open("文案.txt", "r", encoding="utf-8")
 
t = f.read()
f.close()
ls = jieba.lcut(t)
 
txt = " ".join(ls)
w = wordcloud.WordCloud( \
    width = 1000, height = 700,\
    background_color = "white",
    font_path = "msyh.ttc"
    )
w.generate(txt)
w.to_file("grwordcloud.png")

在目录下我们需要准备好一个.txt文本文件,内容自拟,博主这里准备了九十个词汇

运行成功,如果有警告可以忽视

这是我们可以查看我们目录下生成的wordcloud图片文件

效果图

如果已经存在同名文件,则会覆盖原图片文件

示例2:

import jieba
import wordcloud
from matplotlib.pyplot import imread
 
# 读取词云形状的图片,这里使用了一个名为 "chinamap.jpg" 的图片作为词云形状
mask = imread("chinamap.jpg")
 
# 定义排除词语的集合,但是当前代码中未使用到该集合
excludes = {}
 
# 打开文案文件 "文案.txt",并读取其中的内容
f = open("文案.txt", "r", encoding="utf-8")
t = f.read()
f.close()
 
# 使用jieba分词将文本内容分词
ls = jieba.lcut(t)
 
# 将分词结果转换成以空格分隔的字符串
txt = " ".join(ls)
 
# 创建词云对象,并设置词云的参数,包括宽度、高度、背景颜色、字体路径和形状等
w = wordcloud.WordCloud(\
    width=1000, height=700,\
    background_color="white",
    font_path="msyh.ttc", mask=mask
)
 
# 根据分词结果生成词云图
w.generate(txt)
 
# 将生成的词云图保存为图片文件 "grwordcloud1.png"
w.to_file("grwordcloud1.png")

这里博主提前准备了两个用于做词语的底图chinamap.jpg和hand_heart_gesture.jpg的文件

运行成功,生成新文件:

效果图1:


修改文件路径

效果图2:

这段代码首先导入了jieba用于中文分词和wordcloud用于生成词云图的库,以及imread函数从matplotlib.pyplot模块用于读取图片。然后通过imread函数读取了一个图片文件作为词云的形状。接着定义了一个空集合excludes,但在当前代码中并未使用到。然后打开了一个名为"文案.txt"的文本文件,并读取其中的内容。使用jieba对文本内容进行分词,然后将分词结果转换成以空格分隔的字符串。接下来创建了一个词云对象w,设置了词云的参数,包括宽度、高度、背景颜色、字体路径和词云形状等。最后根据分词结果生成词云图,并将生成的词云图保存为图片文件"grwordcloud。

希望对你有帮助!加油!

若您认为本文内容有益,请不吝赐予赞同并订阅,以便持续接收有价值的信息。衷心感谢您的关注和支持!

目录
相关文章
|
13天前
|
存储 人工智能 测试技术
如何使用LangChain的Python库结合DeepSeek进行多轮次对话?
本文介绍如何使用LangChain结合DeepSeek实现多轮对话,测开人员可借此自动生成测试用例,提升自动化测试效率。
199 125
如何使用LangChain的Python库结合DeepSeek进行多轮次对话?
|
6天前
|
监控 数据可视化 数据挖掘
Python Rich库使用指南:打造更美观的命令行应用
Rich库是Python的终端美化利器,支持彩色文本、智能表格、动态进度条和语法高亮,大幅提升命令行应用的可视化效果与用户体验。
37 0
|
2月前
|
存储 Web App开发 前端开发
Python + Requests库爬取动态Ajax分页数据
Python + Requests库爬取动态Ajax分页数据
|
28天前
|
运维 Linux 开发者
Linux系统中使用Python的ping3库进行网络连通性测试
以上步骤展示了如何利用 Python 的 `ping3` 库来检测网络连通性,并且提供了基本错误处理方法以确保程序能够优雅地处理各种意外情形。通过简洁明快、易读易懂、实操性强等特点使得该方法非常适合开发者或系统管理员快速集成至自动化工具链之内进行日常运维任务之需求满足。
100 18
|
1月前
|
机器学习/深度学习 API 异构计算
JAX快速上手:从NumPy到GPU加速的Python高性能计算库入门教程
JAX是Google开发的高性能数值计算库,旨在解决NumPy在现代计算需求下的局限性。它不仅兼容NumPy的API,还引入了自动微分、GPU/TPU加速和即时编译(JIT)等关键功能,显著提升了计算效率。JAX适用于机器学习、科学模拟等需要大规模计算和梯度优化的场景,为Python在高性能计算领域开辟了新路径。
154 0
JAX快速上手:从NumPy到GPU加速的Python高性能计算库入门教程
|
1月前
|
数据采集 存储 Web App开发
Python爬虫库性能与选型实战指南:从需求到落地的全链路解析
本文深入解析Python爬虫库的性能与选型策略,涵盖需求分析、技术评估与实战案例,助你构建高效稳定的数据采集系统。
242 0
|
1月前
|
存储 监控 安全
Python剪贴板监控实战:clipboard-monitor库的深度解析与扩展应用
本文介绍了基于Python的剪贴板监控技术,结合clipboard-monitor库实现高效、安全的数据追踪。内容涵盖技术选型、核心功能开发、性能优化及实战应用,适用于安全审计、自动化办公等场景,助力提升数据管理效率与安全性。
97 0
|
2月前
|
存储 监控 安全
Python剪贴板监控实战:clipboard-monitor库的深度解析与扩展应用
本文介绍如何利用Python的clipboard-monitor库实现剪贴板监控系统,涵盖文本与图片的实时监听、防重复存储、GUI界面开发及数据加密等核心技术,适用于安全审计与自动化办公场景。
100 0

推荐镜像

更多