jieba分词和word cloud生成词云

import jieba
from wordcloud import WordCloud,ImageColorGenerator
import matplotlib.pyplot as plt
import numpy as np
from PIL import Image
from matplotlib import colors
article = open('2021年政府工作报告.txt', 'r', encoding='utf-8').read()

# 停用词
stopwords = set()
# 设置编码否则会出现乱码问题
content = [article.strip() for article in open("cn_stopwords.txt",'r',encoding="utf-8").readlines()]
stopwords.update(content)

# 分词
counts = {}
words = jieba.lcut(article)
for word in words:
    if len(word) == 1:
        continue
    else:
        counts[word] = counts.get(word, 0) + 1
text = " ".join(words)
# words 的类型为列表
print(type(words))
items = list(counts.items())
items.sort(key=lambda x: x[1], reverse=True)
words = [e[0] for e in items]
print(words)

# 生成词云

# 设置背景
back_image = np.array(Image.open("img.png"))
# 设置字体颜色,方法一
# image_color = ImageColorGenerator(back_image)
# wc.recolor(color_func=image_color)
# 方法二
color_list = ['#FF0000','#a41a1a']
color_map = colors.ListedColormap(color_list)
wc = WordCloud(background_color="white", font_path="simfang.ttf", scale=2, mask=back_image,colormap=color_map)

wc.generate(text)
plt.imshow(wc)
plt.axis('off')
plt.show()

										最终结果图
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值