parent
894485e92c
commit
8c244e97a3
@ -0,0 +1,41 @@
|
||||
import jieba # 分词
|
||||
from wordcloud import WordCloud # 词云图相关
|
||||
import matplotlib.pyplot as plt
|
||||
import matplotlib.colors as colors # 处理图片相关内容
|
||||
import numpy
|
||||
from PIL import Image,ImageFont
|
||||
|
||||
# 生成词云方法(指定背景图)
|
||||
def get_wcloud():
|
||||
# 读取小说内容
|
||||
with open(r'例子.txt', 'r', encoding='utf-8') as txt:
|
||||
data = txt.read()
|
||||
# 加载词典
|
||||
jieba.load_userdict('stopwords.txt')
|
||||
# 也可以添加自定义词典
|
||||
words_list = jieba.lcut(data)
|
||||
# 用空格分隔词语
|
||||
tokenstr = ' '.join(words_list)
|
||||
# 打开背景图片
|
||||
color_mask = numpy.array(Image.open('鲸鱼.jpg'))
|
||||
# 自定义文字颜色
|
||||
colormaps = colors.ListedColormap(['#FF0000','#FF7F50','#FFE4C4'])
|
||||
# 生成词云(默认样式)
|
||||
# mywc1 = WordCloud().generate(tokenstr)
|
||||
# 生成词云(自定义样式)
|
||||
mywc1 = WordCloud(
|
||||
mask=color_mask, # 指定背景图形状
|
||||
colormap=colormaps, # 指定颜色
|
||||
font_path = r'/msyh.ttc', # 指定字体
|
||||
background_color='white', # 指定背景颜色,默认黑色
|
||||
width=800, # 指定宽度
|
||||
height=600 # 指定高度
|
||||
).generate(tokenstr)
|
||||
# 显示词云
|
||||
plt.imshow(mywc1)
|
||||
plt.axis('off')
|
||||
plt.show()
|
||||
mywc1.to_file('2.png') # 生成词云图片
|
||||
|
||||
if __name__ == '__main__':
|
||||
get_wcloud()
|
Loading…
Reference in new issue