python词云生成的图片为空白图片

原因:
因为plt.show()写在保存图片语句之前
解决方案:
1.注释掉plt.show()语句
2.将plt.show()语句放到保存图片语句之后
如图所示:
在这里插入图片描述
在这里插入图片描述
附录完整的词云生成代码


import jieba        #分词
from matplotlib import pyplot as plt    #绘图,数据可视化
from wordcloud import WordCloud         #词云
from PIL import Image                   #图片处理
import numpy as np                      #矩阵运算

# import jieba
import collections
import re

fn = open('../templates/txt/美团-峡谷.txt', 'r', encoding='utf-8')  # 打开文件
img = Image.open('../templates/img/img1.jpg')  # 打开遮罩图片


string_data = fn.read()  # 读出整个文件
fn.close()  # 关闭文件

# 文本预处理
pattern = re.compile(u'\t|\n|\.|-|:|;|\)|\(|\?|"')  # 定义正则表达式匹配模式
text = re.sub(pattern, '', string_data)  # 将符合模式的字符去除
# print(text)

#分词
cut = jieba.cut(text)
string = ' '.join(cut)
# print(string)
# print(len(string))


img_array = np.array(img)   #将图片转换为数组
wc = WordCloud(
    # background_color='#217093',
    mask=img_array,
    font_path="msyh.ttc"    #字体所在位置:C:\Windows\Fonts
)
wc.generate_from_text(string)


#绘制图片
fig = plt.figure(1)
plt.imshow(wc)
plt.axis('off')     #是否显示坐标轴

# plt.show()    #显示生成的词云图片
plt.savefig('../static/meiXiaGu3.jpg', dpi=500)
plt.show()
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值