栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

wordcloud库生成词云 -python

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

wordcloud库生成词云 -python

该代码可从文件中读取数据,并生成对应的词云图片,代码见下:

# author: hr,wu
# location: fudan u.
# time: 2022/4
import random

import jieba
import collections
import re
from wordcloud import WordCloud
import matplotlib.pyplot as plt
from matplotlib import colors


with open('data.txt', encoding='utf-8') as f:
    data = f.read()

# 文本预处理  去除一些无用的字符   只提取出中文出来
new_data = re.findall('[u4e00-u9fa5]+', data, re.S)
print(new_data)

list = {}

print()

a = 100
b = 200
for item in new_data:
    list[item] = random.randint(a, b)

#建立颜色数组,可更改颜色
color_list=['#CD853F','#DC143C','#00FF7F','#FF6347','#8B008B','#00FFFF','#0000FF','#8B0000','#FF8C00',
            '#1E90FF','#00FF00','#FFD700','#008080','#008B8B','#8A2BE2','#228B22','#FA8072','#808080']

#调用
colormap=colors.ListedColormap(color_list)


# 绘制词云
my_cloud = WordCloud(
    background_color='white',  # 设置背景颜色  默认是black
    width=900, height=600,
    max_words=100,            # 词云显示的最大词语数量
    font_path='simhei.ttf',   # 设置字体  显示中文
    max_font_size=40,         # 设置字体最大值
    min_font_size=20,         # 设置字体最小值
    random_state=200,           # 设置随机生成状态,即多少种配色方案
    prefer_horizontal=1.0,
    colormap=colormap,
).generate_from_frequencies(list)

# 显示生成的词云图片
plt.imshow(my_cloud, interpolation='bilinear')
# 显示设置词云图中无坐标轴
plt.axis('off')
plt.show()


文件中的内容为:每一行只有一个关键词。

结果:

因为参数可调,所以可以按照个人需求来弄,大家发挥自己的文艺细胞来调配色和大小吧,冲!

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/857188.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号