python 使用wordcloud生成词云图

python 使用wordcloud生成词云图

  • 作者:Geticsen
  • 时间:2019-12-20
  • 43人已阅读
简介 使用jieba分词然后使用wordcloud来生成词云图


图片如下,选取图片的时候尽量选取纯白色背景的图片:

timg.jpg

词云图代码:

import wordcloud #导入词云库
import numpy as np
import matplotlib.pyplot as plt
import PIL
import jieba
import re
# with open(r'E:\master\txt1.txt',encoding='utf8') as f:
#     text1 = f.readlines()
#导入图片
image1 = PIL.Image.open(r'timg.jpg')
MASK = np.array(image1)
WC = wordcloud.WordCloud(font_path = 'C:\\Windows\\Fonts\\STLITI.TTF',max_words=2000,mask = MASK,height= 400,width=400,background_color='white',repeat=False,mode='RGBA') #设置词云图对象属性
text ="长大我要当世界冠军,妈妈给我鼓励和喜之郎" \
      "长大了我要当太空人,爷爷奶奶可高兴了,给我爱吃的喜之郎果冻。" \
      "喜之郎多点关心多点爱" \
      "你妈已经三天没打你了,三天了……" \
      "你的头像另一半是什么" \
      "是个男的" \
      "不是最爱吃的大嘴巴子?" \
      "你吃果冻的样子就像蔡徐鲲" \
      "最后楼主吃着果冻被发射到遥远的太空,爷爷奶奶可高兴了。"

st1 = re.sub('[,。、“”‘ ’]','',str(text)) #使用正则表达式将符号替换掉。
conten = ' '.join(jieba.lcut(st1)) #此处分词之间要有空格隔开,联想到英文书写方式,每个单词之间都有一个空格。
con = WC.generate(conten)
plt.imshow(con)
plt.axis("off")
plt.show()

效果:

image.png

以上是简单的入门更多请参考官方文档http://amueller.github.io/word_cloud/index.html

文章评论

Top