解决:pycharm绘制词云-中文会被显示成方框乱码

目录

一.问题1描述

二. 问题1的原因及解决办法

三.问题2描述

四.问题2原因及解决办法


一.问题1描述

       利用大数据进行文本分析,对文本进行处理后,希望直观的将数据绘制成图云查看分词效果,但整个词云全为方框乱码:

此时绘制词云的代码为:

# 绘制消极词云
negative_wordcloud_text = " ".join(negative_words)
#设置词云信息
negative_wordcloud = WordCloud(width=1200, height=800, background_color='white').generate(negative_wordcloud_text)
plt.figure(figsize=(12, 8))
plt.imshow(negative_wordcloud, interpolation="bilinear")
plt.axis("off")
plt.title("消极评论关键词")
plt.show()

二. 问题1的原因及解决办法

          wordcloud默认是不支持显示中文字符的,中文会被显示成方框。可以尝试更改WordCloud的字体参数,以便正常显示中文字符。

代码示例:

# 绘制消极词云
negative_wordcloud_text = " ".join(negative_words)
#--------------------------------------------此处修改------------------------
#设置词云信息
negative_wordcloud = WordCloud(font_path ="C:/Windows/Fonts/msyh.ttc",width=1200, height=800, background_color='white').generate(negative_wordcloud_text)
plt.figure(figsize=(12, 8))
plt.imshow(negative_wordcloud, interpolation="bilinear")
plt.axis("off")
plt.title("消极评论关键词")
plt.show()

三.问题2描述

       修改后词云正常显示,但标题为方框乱码

 四.问题2原因及解决办法

        同上,wordcloud默认是不支持显示中文字符的,中文会被显示成方框。但是标题需要另外设置。

代码展示

# 绘制消极词云
negative_wordcloud_text = " ".join(negative_words)
#--------------------------------------------此处修改------------------------
#设置词云信息
negative_wordcloud = WordCloud(font_path ="C:/Windows/Fonts/msyh.ttc",width=1200, height=800, background_color='white').generate(negative_wordcloud_text)
plt.figure(figsize=(12, 8))
plt.imshow(negative_wordcloud, interpolation="bilinear")
plt.axis("off")
# -----------------------------此处修改------------------------------------------
# 设置中文字体
plt.rcParams['font.sans-serif'] = ['SimHei']
plt.title("消极评论关键词")
plt.show()

     修改后的词云正常显示:

  • 7
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值