admin管理员组

文章数量:1794759

【已解决】词云图只显示方框,无法正确显示中文

报错及效果图

报错代码
代码语言:javascript代码运行次数:0运行复制
from wordcloud import WordCloud
def drawing_wordcloud(jieba_split):
    colormaps = colors.ListedColormap(['#33b846', '#a9be70', '#e50000'])
    # 生成词云(自定义样式)
    mywc1 = WordCloud(
        colormap=colormaps,  # 指定颜色
        background_color='white',  # 指定背景颜色,默认黑色
        width=800,  # 指定宽度
        height=600  # 指定高度
    ).generate(jieba_split)
    # 显示词云
    plt.rcParams["font.sans-serif"] = ["SimHei"]  # 设置字体

    plt.imshow(mywc1)
    plt.title("关键词词云")
    plt.axis('off')
    plt.show()
drawing_wordcloud(' '.join(jieba_split))
解决后效果图

解决方案

WordCloud中加入参数font_path,指定值为C:/Windows/Fonts/simkai.ttf,即font_path='C:/Windows/Fonts/simkai.ttf', 修改后代码为:

代码语言:javascript代码运行次数:0运行复制
from wordcloud import WordCloud
def drawing_wordcloud(jieba_split):
    colormaps = colors.ListedColormap(['#33b846', '#a9be70', '#e50000'])
    # 生成词云(自定义样式)
    mywc1 = WordCloud(
        colormap=colormaps,  # 指定颜色
        font_path='C:/Windows/Fonts/simkai.ttf',
        background_color='white',  # 指定背景颜色,默认黑色
        width=800,  # 指定宽度
        height=600  # 指定高度
    ).generate(jieba_split)
    # 显示词云
    plt.rcParams["font.sans-serif"] = ["SimHei"]  # 设置字体

    plt.imshow(mywc1)
    plt.title("关键词词云")
    plt.axis('off')
    plt.show()
drawing_wordcloud(' '.join(jieba_split))

如果该路径下找不到simkai.ttf字体文件,下载后放入指定路径即可

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。 原始发表:2023-07-11,如有侵权请联系 cloudcommunity@tencent 删除解决方案drawingfontsjiebasplit

本文标签: 已解决词云图只显示方框,无法正确显示中文