用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字体文件以及背景图片。

自己运行起来试试看吧!

相关推荐
ZhengEnCi6 分钟前
09a-斯坦福 CS336 作业一:BPE 分词器
python·神经网络
测试员周周13 分钟前
【Appium 系列】第18节-重试与容错 — 移动端测试的稳定性保障
人工智能·python·功能测试·ui·单元测试·appium·测试用例
还是鼠鼠24 分钟前
AI掘金头条新闻系统 (Toutiao News)-用户注册-创建用户
后端·python·mysql·fastapi·web
灰灰勇闯IT33 分钟前
DeepSeek-R1 在 CANN 上的推理部署
pytorch·python·深度学习
彦为君36 分钟前
Java文件处理效率库Commons-IO(速览)
java·开发语言·mfc
sycmancia1 小时前
Qt——文本打印与光标定位
开发语言·qt
故事和你911 小时前
洛谷-【动态规划1】动态规划的引入2
开发语言·数据结构·c++·算法·动态规划·图论
天才测试猿2 小时前
Jenkins+Docker自动化测试全攻略
自动化测试·软件测试·python·测试工具·docker·jenkins·测试用例
AI人工智能+电脑小能手2 小时前
【大白话说Java面试题 第71题】【Mysql篇】第1题:索引是什么?
java·开发语言·b树·mysql·面试
5201-2 小时前
向量数据库在 NPU 上的加速
数据库·pytorch·python