艺术与文本的交织:基于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。

希望对你有帮助!加油!

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

目录
相关文章
|
4天前
|
机器学习/深度学习 编解码 算法
常用的Python库介绍
Python作为一种功能强大的编程语言,拥有众多的第三方库和框架,这些库和框架覆盖了从数据处理、网络编程、Web开发到人工智能等多个领域。
31 15
|
5天前
|
分布式计算 大数据 Java
如何使用Python的pyodps库来进行跨项目空间重命名表名?
MaxCompute作为一款全面的大数据处理平台,广泛应用于各类大数据分析、数据挖掘、BI及机器学习场景。掌握其核心功能、熟练操作流程、遵循最佳实践,可以帮助用户高效、安全地管理和利用海量数据。以下是一个关于MaxCompute产品使用的合集,涵盖了其核心功能、应用场景、操作流程以及最佳实践等内容。
33 12
|
9天前
|
机器学习/深度学习 自然语言处理 TensorFlow
使用Python实现深度学习模型:文本生成与自然语言处理
【7月更文挑战第14天】 使用Python实现深度学习模型:文本生成与自然语言处理
38 12
|
3天前
|
存储 监控 数据可视化
【Bokeh 库】Python 中的动态数据可视化
【7月更文挑战第15天】Python的Bokeh库是用于动态数据可视化的利器,它能创建交互式、现代Web浏览器兼容的图表。安装Bokeh只需`pip install bokeh`。基础概念包括Plot、Glyph、数据源和工具。通过示例展示了如何用Bokeh创建动态折线图,包括添加HoverTool。Bokeh还支持散点图、柱状图,可自定义样式和布局,添加更多交互工具,并能构建交互式应用和实时数据流更新。适用于数据探索和实时监控。
21 5
|
10天前
|
SQL 并行计算 API
Dask是一个用于并行计算的Python库,它提供了类似于Pandas和NumPy的API,但能够在大型数据集上进行并行计算。
Dask是一个用于并行计算的Python库,它提供了类似于Pandas和NumPy的API,但能够在大型数据集上进行并行计算。
|
10天前
|
机器学习/深度学习 人工智能 数据挖掘
Numba是一个Python库,用于对Python代码进行即时(JIT)编译,以便在硬件上高效执行。
Numba是一个Python库,用于对Python代码进行即时(JIT)编译,以便在硬件上高效执行。
|
10天前
|
网络协议 安全 Shell
`nmap`是一个开源的网络扫描工具,用于发现网络上的设备和服务。Python的`python-nmap`库允许我们在Python脚本中直接使用`nmap`的功能。
`nmap`是一个开源的网络扫描工具,用于发现网络上的设备和服务。Python的`python-nmap`库允许我们在Python脚本中直接使用`nmap`的功能。
|
10天前
|
机器人 Shell 开发者
`roslibpy`是一个Python库,它允许非ROS(Robot Operating System)环境(如Web浏览器、移动应用等)与ROS环境进行交互。通过使用`roslibpy`,开发者可以编写Python代码来远程控制ROS节点,发布和订阅话题,以及调用服务。
`roslibpy`是一个Python库,它允许非ROS(Robot Operating System)环境(如Web浏览器、移动应用等)与ROS环境进行交互。通过使用`roslibpy`,开发者可以编写Python代码来远程控制ROS节点,发布和订阅话题,以及调用服务。
|
7天前
|
数据采集 搜索推荐 机器人
Python 神器:wxauto 库
Python 神器:wxauto 库
42 1
|
10天前
|
存储 搜索推荐 算法
`surprise`是一个用于构建和分析推荐系统的Python库。
`surprise`是一个用于构建和分析推荐系统的Python库。