用python生成词频云图(python实例二十一)

目录

1.认识Python

2.环境与工具

[2.1 python环境](#2.1 python环境)

[2.2 Visual Studio Code编译](#2.2 Visual Studio Code编译)

3.词频云图

[3.1 代码构思](#3.1 代码构思)

[3.2 代码实例](#3.2 代码实例)

[3.3 运行结果](#3.3 运行结果)

4.总结


1.认识Python

Python 是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言。

Python 的设计具有很强的可读性,相比其他语言经常使用英文关键字或标点符号,它具有比其他语言更有特色的语法结构。

2.环境与工具

2.1 python环境

在Windows上使用命令行窗口查看所安装的python版本

复制代码
python --version

2.2 Visual Studio Code编译

Visual Studio Code是一款由微软开发且跨平台的免费源代码编辑器。该软件以扩展的方式支持语法高亮、代码自动补全、代码重构功能,并且内置了命令行工具和Git 版本控制系统。

3.词频云图

3.1 代码构思

使用词频云图模块库wordcloud、画图模板库matplotlib、中文分词库jieba,读入文本文件、图片文件,然后通过分词进行文本解析,然后绘制最终的词频云图。

3.2 代码实例

复制代码
from wordcloud import WordCloud, STOPWORDS
import matplotlib.pyplot as plt
import jieba

# 文件路径
filename = 'test2.txt'

# 读取文本文件
with open(filename, encoding='utf-8') as f:
    vtext = f.read()

# 使用 jieba 分词
vtext = ' '.join(jieba.cut(vtext))

# 读取背景图片
img = plt.imread('1.png')

# 获取默认的屏蔽词,并添加自定义屏蔽词
stopwords = set(STOPWORDS)
vstop = ['没有', '还有', '不是', '只是', '说到']
for i in vstop:
    stopwords.add(i)

# 生成词云对象
wordcloud = WordCloud(
    font_path='./part4/cangekuheiziti.ttf',
    background_color='white',
    max_words=200,
    mask=img,
    stopwords=stopwords
).generate(vtext)

# 显示词频云图
plt.imshow(wordcloud, interpolation='bilinear')
plt.axis('off')  # 设置图形坐标

# 显示图形
plt.show()

# 保存图形
wordcloud.to_file('wordcloud_output.jpg')

3.3 运行结果

4.总结

在程序运行前要保证文本文件1.txt文件内有文本,这样才能根基文本文件中词语出现的频率生成最终的词频图,还有要注意要有.ttf字体文件以及背景图片。

自己运行起来试试看吧!

相关推荐
Wang's Blog2 小时前
Java 项目实战: 交友项目:登录链路回顾与今日任务地图
java·开发语言·状态模式·交友
信誓旦旦的程序猿3 小时前
【Python量化实战宝典 #08】可转债与债券接口手册:转股价·溢价率·纯债价值(Python 可跑)
java·python·股票数据api·股票数据api接口·股票api数据接口·股票量化数据api·股票量化数据接口
砚底藏山河3 小时前
python量化:行情数据回溯
java·开发语言·python·金融·maven
今年下半年3 小时前
AI智能体项目实战记录(02):初始化 Python 项目
开发语言·人工智能·python·fastapi
Williamtym3 小时前
PickGo Lab实践:用浏览器、Python和MCP串起机器人搬运仿真
开发语言·python·机器人
DongQiShanRen4 小时前
六根硬件映射(四):归属澄清、两处不一致与卷十一总表
开发语言·人工智能·算法·rust·哈希算法·集成学习
CS创新实验室4 小时前
Python 对象“死“了之后去了哪?——引用计数与分代垃圾回收
开发语言·jvm·python
CCblandy4 小时前
雪花 ID 四个边界实测:时钟回拨重号 500 个,前端 JSON.parse 直接丢精度
后端·python·算法·性能优化·架构
quantdash_cc4 小时前
Pandas 处理分钟级股票行情:从原始数据清洗到 K 线聚合
开发语言·python·数据分析·pandas·量化交易·股票数据·quantdash
yu_zhidun4 小时前
企业电脑监控软件怎么选:别只看功能清单,先看这 6 个底层能力
开发语言·电脑·php·域智盾系统