Python文本数据可视化之“词云”图

import numpy as np # numpy数据处理库

import wordcloud # 词云库

from PIL import Image # 图像处理库,用于读取背景图片

import matplotlib.pyplot as plt # 图像展示库,以便在notebook中显示图片

from openpyxl import load_workbook #读取词频Excel文件

import os #获取词频Excel文件路径

#将存好的Excel词频表读取成字典

path='词频' #文件所在文件夹

files = [path+"\\"+i for i in os.listdir(path)] #获取文件夹下的文件名,并拼接完整路径

maskImage = np.array(Image.open('background.png')) # 定义词频背景图

for file in files:

#将词频Excel文件读取为字典

wb = load_workbook(file)

ws = wb.active

wordFreq = {}

for i in range(2,ws.max_row+1):

word = ws["A"+str(i)].value

freq = ws["B"+str(i)].value

wordFreq[word] = freq

#定义词云样式

wc = wordcloud.WordCloud(

font_path='C:/Windows/Fonts/simhei.ttf', # 设置字体

mask= maskImage, # 设置背景图

max_words=500, # 最多显示词数

max_font_size=100) # 字号最大值

#生成词云图

wc.generate_from_frequencies(wordFreq) # 从字典生成词云

#保存图片到指定文件夹

wc.to_file("词云图\\{}.png".format(file.split("\\")[1][:4]))

#在notebook中显示词云图

plt.imshow(wc) # 显示词云

plt.axis('off') # 关闭坐标轴

plt.show() # 显示图像

相关推荐
qq_413847401 分钟前
Redis怎样设计企业级备份策略_结合全量RDB与增量AOF实现多级数据保护
jvm·数据库·python
iiiiyu3 分钟前
常用API(StringJoiner类 & Math类 & System类)
java·大数据·开发语言·数据结构·编程语言
qq_372906938 分钟前
如何通过点击事件动态展开和收起 HTML 元素
jvm·数据库·python
qq_3721542321 分钟前
Golang Gin怎么做JWT登录认证_Golang Gin JWT教程【实用】
jvm·数据库·python
2401_8716965222 分钟前
C#怎么实现文件上传下载 C#如何用WebAPI实现大文件断点续传功能【网络】
jvm·数据库·python
Xiu Yan24 分钟前
Java 转 C++ 系列:函数对象、谓词和内建函数对象
java·开发语言·c++
m0_3776182325 分钟前
如何在 pytest 中通过组合多个 fixture 实现参数化测试
jvm·数据库·python
Full Stack Developme27 分钟前
Hutool StrUtil 教程
开发语言·网络·python
代码羊羊27 分钟前
Rust方法速览:从self到impl
开发语言·后端·rust
小糖学代码27 分钟前
LLM系列:2.pytorch入门:2.PyTorch张量运算
pytorch·python·aigc·numpy