以下のサイトを参考に、羅生門をWordCloud化しようとコピペして試みているのですが
WordCloud内の文字数が数える程度しか表示されなくて、何が原因がわからず
ここから何を調べると参考サイトのようにたくさんの文字が表示されるようになるのか知りたいです。
print(word_str)
を挿入して、word_strで文字数が極端に少ないことはわかったので
次に関数のget_word_strが私の環境ではうまく動いていないのではと考えましたが
ここからどう調べると良いかわからなくて困っています。
あまりに調査不足かもしれませんが、もしよろしければご教示いただける方、アドバイスの程よろしくお願い致します。
コードになります。
from wordcloud import WordCloud import matplotlib.pyplot as plt FONT_PATH =r"C:/Windows/Fonts/msmincho.ttc" TXT_NAME = "rashomon" def get_word_str(text): import MeCab import re mecab = MeCab.Tagger() parsed = mecab.parse(text) lines = parsed.split('\n') lines = lines[0:-2] word_list = [] for line in lines: tmp = re.split('\t|,', line) # 名詞のみ対象 if tmp[1] in ["名詞"]: # さらに絞り込み if tmp[2] in ["一般", "固有名詞"]: word_list.append(tmp[0]) return " " . join(word_list) # テキストファイル読み込み read_text = open(TXT_NAME + ".txt", encoding="utf8").read() # print(read_text) # 文字列取得 word_str = get_word_str(read_text) print(word_str) # 画像作成 wc = WordCloud(font_path=FONT_PATH, max_font_size=100, width=900, height=500).generate(word_str) # 画像保存(テキストファイル名で) wc.to_file(TXT_NAME + ".png") # Wordクラウド化 plt.figure(figsize=(15,12)) plt.imshow(wc) plt.axis("off") plt.show()
<参考にしたサイト>
https://self-development.info/wordcloud(ワードクラウド)を日本語で作成する【python】/
あなたの回答
tips
プレビュー