WrodCloud 中文乱码和关键字重复

记录一下在用 wordcloud 绘制词云图片的过程中,遇到的两个的问题及解决方案;

wordcloud 是一个 python 词云生成器,地址:http://github.com/amueller/word_cloud

1、乱码

问题描述

要统计的内容是日文,生成的词云中,英文字母可以显示出来,其他都是一些方框,应该都是日文汉字或假名;

解决方案有两种:

1、在导入 wordcloud 之前,先定义 FONT_PATH 这个系统变量,wordcloud 就会用这个字体了;

os.environ['FONT_PATH'] = '/System/Library/Fonts/ヒラギノ明朝 ProN.ttc'
from wordcloud import WordCloud

2、在创建词云的时候,设置字体路径

font_path = '/System/Library/Fonts/ヒラギノ明朝 ProN.ttc'
wordcloud = WordCloud(max_font_size=40, width=400, height=300, collocations=False, font_path=font_path, scale=2).generate(text)

在 WordCloud 的参数中,添加 font_path 参数即可;

macOS 中的字体文件地址,苹果官方说明请点击查看

/Users/用户名/Library/Fonts/
/System/Library/Fonts/
/Library/Fonts/

主要是上面三个,还有一个“网络/Library/Fonts/”,在自己的机器上没有找到对应的例子;

2、关键字重复

可以试一下 collocations 参数,该参数表示是否统计搭配词,默认为 True,即统计搭配词;

比如文案中大量出现了“ashita top” 和 单独的 “ashita”,collocations 设置为 True 时,系统会把”ashita top”作为一个整体进行统计,最终生成的词云里,展示了“ashita top”和“ashita”,看上去有两个“ashita”;
如果设置为 False ,则不进行搭配,会按照单个单词进行统计;

如果这篇文章对你有用,可以点击下面的按钮告诉我

0

发表回复