python 生成词云

1、知识点

"""
WordCloud参数讲解:
            font_path表示用到字体的路径
            width和height表示画布的宽和高
            prefer_horizontal可以调整词云中字体水平和垂直的多少
            mask即掩膜,产生词云背景的区域
            scale:计算和绘图之间的缩放
            min_font_size设置最小的字体大小
            max_words设置字体的多少
            stopwords设置禁用词
            background_color设置词云的背景颜色
            max_font_size设置字体的最大尺寸
            mode设置字体的颜色 但设置为RGBA时背景透明
            relative_scaling设置有关字体大小的相对字频率的重要性
            regexp设置正则表达式
            collocations 是否包含两个词的搭配
"""

2、代码

# coding = utf-8

import matplotlib.pyplot as plt
from wordcloud import WordCloud
import jieba
import os
import numpy
import PIL.Image as Image
cur_path = os.path.dirname(__file__) #当前文件的路径
print(cur_path)
text_from_file_with_apath = open(os.path.join(cur_path, '深渊主宰系统.txt'),encoding='utf-8').read() #读取文件
mask_pic = numpy.array(Image.open(os.path.join(cur_path, 'love2.jpg')))  #读取填词的模板图片

wordlist_after_jieba = jieba.cut(text_from_file_with_apath, cut_all=True) #jieba分词
wl_space_split = " ".join(wordlist_after_jieba)

#mask 表示将词填充到的模板图片 font_path 表示填充的字体
my_wordcloud = WordCloud(background_color="white",mask=mask_pic, font_path=os.path.join(cur_path, '竹繁.ttf')).generate(wl_space_split)

#显示词云
plt.imshow(my_wordcloud)
plt.axis("off")
plt.show()

3、模板图片

原文地址:https://www.cnblogs.com/ywjfx/p/11016307.html