前提
ワードクラウドを生成するプログラムを書いています。
発生している問題・エラーメッセージ
Traceback (most recent call last): File "wordcloud/analyze_wordcloud1.py", line 22, in <module> wc = WordCloud( File "/home/ren0525/.local/lib/python3.8/site-packages/wordcloud/wordcloud.py", line 639, in generate return self.generate_from_text(text) File "/home/ren0525/.local/lib/python3.8/site-packages/wordcloud/wordcloud.py", line 621, in generate_from_text self.generate_from_frequencies(words) File "/home/ren0525/.local/lib/python3.8/site-packages/wordcloud/wordcloud.py", line 503, in generate_from_frequencies font = ImageFont.truetype(self.font_path, font_size) File "/home/ren0525/.local/lib/python3.8/site-packages/PIL/ImageFont.py", line 959, in truetype return freetype(font) File "/home/ren0525/.local/lib/python3.8/site-packages/PIL/ImageFont.py", line 956, in freetype return FreeTypeFont(font, size, index, encoding, layout_engine) File "/home/ren0525/.local/lib/python3.8/site-packages/PIL/ImageFont.py", line 247, in __init__ self.font = core.getfont( OSError: cannot open resource
該当のソースコード
import re import sys import matplotlib.pyplot as plt import spacy from wordcloud import WordCloud if len(sys.argv) != 2: sys.exit("利用法:{}(ファイル名)".format(sys.argv[0])) include_pos = ('NOUN', 'VERB', 'ADJ') stopwords = ('する', 'ある', 'ない', 'いう', 'もの', 'こと', 'よう', 'なる', 'ほう') nlp = spacy.load("ja_ginza") with open(sys.argv[1], 'r', encoding="UTF-8") as f: text = f.read() doc = nlp(text) words = [token.lemma_ for token in doc if token.pos_ in include_pos and token.lemma_ not in stopwords] wc = WordCloud( background_color='white', font_path='C:/Windows/Fonts/HGRGE.TTC', max_font_size=100).generate(' '.join(words)) plt.figure(figsize=(8, 4)) plt.imshow(wc, interpolation='bilinear') plt.axis("off") plt.tight_layout(pad=0) plt.show()
試したこと
以下のサイトを参考にエラーの解決を試みましたが上手くいきませんでした。
【実践】PythonでWordCloud(ワードクラウド)しようぜ!
補足情報(FW/ツールのバージョンなど)
Windows10
Ubuntu20.05
Python3.9.5
> Windows10
Ubuntu20.05
pythonを実行してるosは上記のどちらでしょうか?
エラーメッセージの
> File "/home/ren0525/.local/lib/python3.8/site-packages/wordcloud/wordcloud.py", line 639, in generate
とかのパスはlinuxのようなので、linux上でpythonを実行してるようですが、その場合は、
> font_path='C:/Windows/Fonts/HGRGE.TTC',
のようにwindowsのフォントのパスを指定してもダメですよ
ご回答ありがとうございます!
PCはWindows10ですが、WSLのUbuntuでPythonを実行しています。

回答1件
あなたの回答
tips
プレビュー