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

[复制链接]
发表于 2026-2-25 05:27:46 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
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() # 表现图像
回复

使用道具 举报

登录后关闭弹窗

登录参与点评抽奖  加入IT实名职场社区
去登录
快速回复 返回顶部 返回列表