Python

텍스트마이닝 : 워드 클라우드 작성하기2

이부일 2018. 2. 26. 19:26

from konlpy.tag import Kkma

from konlpy.tag import Hannanum
from konlpy.tag import Twitter
from wordcloud import WordCloud, STOPWORDS
from PIL import Image
import matplotlib.pyplot as plt
import numpy as np
import platform
import random
%matplotlib inline


# 텍스트 파일과 이미지 파일 읽어오기
news = open("09. a_new_hope.txt").read()
news = news.replace("HAN", "Han")
news = news.replace("LUKE's", "Luke")
mask = np.array(Image.open("09. stormtrooper_mask.png"))


# Stop Words 설정하기
stopwords = set(STOPWORDS)
stopwords.add("int")
stopwords.add("ext")


# 워드클라우드 설정하기

wc = WordCloud(max_words = 1000, mask = mask, stopwords = stopwords, margin = 10, random_state = 1).generate(news)
default_colors = wc.to_array()


# 폰트 설정하기
def grey_color_func(word, font_size, position, orientation, random_state=None, **kwargs):
    return 'hsl(0, 0%%, %d%%)' % random.randint(60,100)


# 워드 클라우드 작성하기
plt.figure(figsize = (12, 12))
plt.imshow(wc.recolor(color_func = grey_color_func, random_state = 3), interpolation = "bilinear")
plt.axis("off")
plt.show()

이미지: 텍스트


[출처] 파이썬으로 데이터 주무르기, 민형기 지음, BJPUBLIC, p301~302