1、准备
1)txt文档
2)wordcloud安装,用于生成词云:pip install wordcloud
3)jieba库安装,用于对文档进行分词,不分词的话,词云图上显示的是句子:pip install jieba
4)背景图,注:想要轮廓效果,图的背景必须是纯色(白色或黑色最好,图像有明显的反差色)
2、不分词
1)代码:
# 生成不分词的图片 from wordcloud import WordCloud import PIL.Image as image import numpy as np with open("hetang.txt", encoding='utf-8') as f: # 打开文本,我此处使用的是荷塘月色 text = f.read() mask = np.array(image.open("mod_imgs/3.png")) # 打开背景图片 wc= WordCloud( mask=mask, # 背景图像 font_path='FZSTK.TTF' # 中文字体,一般在c:windowsfonts 下面 ).generate(text) # 生成文字云 image_produce = wc.to_image() image_produce.show() # 打印图片 wc.to_file('词云3-1.jpg') # 将图片存入文件
2)效果图
3、分词
1)代码
from wordcloud import WordCloud import PIL.Image as image import numpy as np import jieba with open("hetang.txt", encoding='utf-8') as f: text = f.read() word_list = jieba.cut(text) # 对中文进行分词 text = " ".join(word_list) # 分词后用空格连接在一起 mask = np.array(image.open("mod_imgs/3.png")) wc= WordCloud( mask=mask, background_color='white', # 图像背景色,默认是黑色(如上图) font_path = "FZSTK.TTF" ).generate(text) image_produce = wordcloud.to_image() image_produce.show() wc.to_file('词云3-2.jpg')
2)效果图