在上篇博客中我做了一下英文的词云可视化,然后也做了一下中文的词云可视化。中文词云是运用了jieba,所以琢磨了一下。具体实现如下:
先来看看效果图:
这是我用的原图片:
然后是实现代码:
# 引入模块
import numpy as np
import matplotlib.pyplot as plt
import jieba
from PIL import Image
from wordcloud import WordCloud, STOPWORDS
with open('muye.txt', 'r', encoding='utf-8')as fp: # 文本文件
neirong = fp.read()
# 设置分词
split = jieba.cut(neirong, cut_all=False)
words = ' '.join(split)
print(words)
stopwords = STOPWORDS.copy()
stopwords.add('')
stopwords.add('')
stopwords.add('')
stopwords.add('')
stopwords.add('')
# 导入背景图
image = np.array(Image.open('abc.jpg'))
# 设置参数
wc = WordCloud(background_color='white', mask=image, font_path='STKAITI.TTF', stopwords=stopwords, max_font_size=500,
random_state=50)
wc.generate_from_text(words)
plt.imshow(wc) # 绘制图像
plt.axis('off')
plt.savefig('cba.jpg') # 生成一个jpg文件