当前位置: 代码迷 >> 综合 >> self.font = core.getfont(font, size, index, encoding, layout_engine=layout_engine) OSError: cannot o
  详细解决方案

self.font = core.getfont(font, size, index, encoding, layout_engine=layout_engine) OSError: cannot o

热度:74   发布时间:2023-09-22 21:58:50.0

词云图问题


python处理中文文本数据时,常常用到jieba和wordcloud包。
当画词云图时
代码:

from PIL import Image
import numpy as np
from wordcloud import WordCloud,ImageColorGenerator
import matplotlib.pyplot as plt
image= Image.open('图片.jpeg')
graph = np.array(image)
wc = WordCloud(font_path='songti.ttc',    #设置字体background_color='White',          #设置背景颜色max_words=n,                       #设置词云显示的最大词数mask=graph)                        #设置背景样式 '''生成词云'''
wc.generate_from_frequencies(keywords)            #生成词云
plt.imshow(wc)

提示:OSError: cannot open resource
原因:每个人电脑里的font文件里的文字命名不一样,即ttc文件名不一样。
解决办法:找到你电脑里的font文件,选择你想要的字体,看它的属性,将名字复制到代码中。
self.font = core.getfont(font, size, index, encoding, layout_engine=layout_engine) OSError: cannot o
比如我电脑中微软雅黑粗体的名字为msyhbd.ttc.

其它常见参数:
self.font = core.getfont(font, size, index, encoding, layout_engine=layout_engine) OSError: cannot o
我的词云图:
self.font = core.getfont(font, size, index, encoding, layout_engine=layout_engine) OSError: cannot o

  相关解决方案