I am a Korean who just started learning python now. I was doing wordcloud with Korean text. I think I did everything I was taught. But I got this error that I cannot resolve. please help me.
from wordcloud import WordCloud
from collections import Counter
from konlpy.tag import Okt
this is the input
text=''
with open("./res/대한민국헌법.txt", encoding="utf-8") as f:
text = f.read()
nlp =Okt()
nouns =nlp.nouns(text)
# print(nouns)
# print("-" * 30)
words=[]
for n in nouns:
if len(n) >1:
words.append(n)
# print(words)
print("-" * 30)
#Counter 객체를 통해 리스트 원소들의 빈도수 계산
count =Counter(words)
most=count.most_common(100)
# print(most)
print("-" * 30)
tags={}
for t in most:
n, c= t
tags[n]=c
print(tags)
wc= WordCloud(font_path="NanumGothic", width=1200, height=800,
scale=2.0, max_font_size=250)
wc.generate_from_frequencies(tags) # <- this is where I got the error from
wc.to_file("대한민국헌법-주요단어.png")
This is the output
Traceback (most recent call last): File "D:\hyeokjun\01-파이썬기초, 데이터 시각화\09-데이터시각화 -가로막대+파이+산점도그래프+워드클라우드\파이썬09강\파이썬09강\section09\01.numeric.py", line 40, in wc.generate_from_frequencies(tags) File "C:\Users\newjh\AppData\Local\Programs\Python\Python37\lib\site-packages\wordcloud\wordcloud.py", line 496, in generate_from_frequencies font = ImageFont.truetype(self.font_path, font_size) File "C:\Users\newjh\AppData\Local\Programs\Python\Python37\lib\site-packages\PIL\ImageFont.py", line 648, in truetype return freetype(font) File "C:\Users\newjh\AppData\Local\Programs\Python\Python37\lib\site-packages\PIL\ImageFont.py", line 645, in freetype return FreeTypeFont(font, size, index, encoding, layout_engine) File "C:\Users\newjh\AppData\Local\Programs\Python\Python37\lib\site-packages\PIL\ImageFont.py", line 194, in init font, size, index, encoding, layout_engine=layout_engine OSError: cannot open resource [Finished in 5.9s]
It seems the font cannot be retrieved.
Try copying the font "NanumGothic" into your project folder or update the font_path="NanumGothic"
in the following line to point to the correct font file:
wc= WordCloud(font_path="/path/to/fontfile", width=1200, height=800,
scale=2.0, max_font_size=250)