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

发布于:2024-07-11 ⋅ 阅读:(13) ⋅ 点赞:(0)

目录

1.认识Python

2.环境与工具

2.1 python环境

2.2 Visual Studio Code编译

3.词频云图

3.1 代码构思

3.2 代码实例

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

自己运行起来试试看吧!