parent
972e45671c
commit
9c9d893f3d
@ -0,0 +1,37 @@
|
||||
# 生成云图
|
||||
|
||||
|
||||
def make_graph():
|
||||
text_data = ''
|
||||
with open('AI_danmu.txt', 'r', encoding='utf-8') as file:
|
||||
for line in file:
|
||||
text_data += line.strip() + ' '
|
||||
|
||||
# 使用jieba进行中文分词
|
||||
words = jieba.cut(text_data, cut_all=False)
|
||||
word_list = " ".join(words) #列表转成字符串
|
||||
|
||||
# 加载自定义形状图片
|
||||
shape_mask = np.array(Image.open('img.png'))
|
||||
|
||||
# 创建词云图对象,并设置形状
|
||||
wordcloud = WordCloud(width=2000,
|
||||
background_color='white',
|
||||
mask=shape_mask, # 使用自定义形状
|
||||
contour_width=1,
|
||||
contour_color='white', # 边框颜色
|
||||
font_path='STKAITI.TTF', # 用于中文显示的字体文件
|
||||
max_words=30000, # 最多显示的词语数量
|
||||
colormap='Blues', # 颜色映射,可以根据需要更改
|
||||
).generate(word_list)
|
||||
|
||||
# 使用形状图片的颜色
|
||||
image_colors = ImageColorGenerator(shape_mask)
|
||||
wordcloud.recolor(color_func=image_colors)
|
||||
|
||||
# 显示词云图
|
||||
plt.figure(figsize=(10, 5))
|
||||
plt.imshow(wordcloud, interpolation='bilinear')
|
||||
plt.axis('off') # 隐藏坐标轴
|
||||
plt.title('')
|
||||
plt.show()
|
Loading…
Reference in new issue