您的位置:首页 > 编程语言 > Python开发

python使用wordcloud生成词云(能识别中文)

2017-04-28 18:57 281 查看
# -*- coding: utf-8 -*-
from os import path
from PIL import Image
import codecs
import numpy as np
import matplotlib.pyplot as plt
from wordcloud import WordCloud, STOPWORDS

d = path.dirname(__file__) # 当前文件文件夹所在目录

# 读取文件,使用codecs包的open方法指定编码格式,不然读取不到中文
text = codecs.open('event.txt',encoding='utf-8').read()

# 读取图片
love_mask = np.array(Image.open(path.join(d, "love.jpg")))

wc = WordCloud(font_path='MSYH.TTF',
background_color="white", max_words=2000,
mask=love_mask,
stopwords=STOPWORDS.add(""))
# 生成词云
wc.generate(text)

# 保存为文件
# wc.to_file(path.join(d, "love.png"))

# 显示图
plt.imshow(wc)
plt.axis("off")
plt.show()


我的event1.txt是已经处理过的文字,大家在使用时可能需要先用jieba分词来处理一下文本。

原图如下:



效果图如下:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  wordcloud python 词云