워드클라우드 라이브러리 설치
!pip install wordcloud
https://github.com/amueller/word_cloud
GitHub - amueller/word_cloud: A little word cloud generator in Python
A little word cloud generator in Python. Contribute to amueller/word_cloud development by creating an account on GitHub.
github.com
워드 클라우드 생성
빈도값에 따라 단어 크기를 다르게 표현
from wordcloud import WordCloud
import numpy as np
# WordCloud 모델 생성
wc = WordCloud(font_path='./gulim.ttc', # 폰트입력
background_color="white", # 배경색
collocations=False, #내가 만들어놓은 단어 그대로 나오게
width=800, # 넓이
height=800, # 높이
scale=1) # 스케일 (기본값1)
wc.generate(' '.join(store_df['text_tag'])) # 모델에 텍스트 뭉치 입력
<wordcloud.wordcloud.WordCloud at 0x1e99d6c18d0>
하나의 텍스트 뭉치를 넣어줘야 함
토큰화에 대한 클렌징이 이루어져있어야 wordcloud를 이용할 수 있음
이미지로 워드클라우드 출력 - matpolib이용
import matplotlib.pyplot as plt
plt.figure(figsize=(5,5))
ax = plt.subplot()
ax.imshow(wc) # 이미지를 표에 입력
ax.set_title('워드클라우드', fontsize=20)
for i in 'top bottom right left'.split():
ax.spines[i].set_visible(False)
ax.tick_params(left=False, right=False, labelleft=False,
labelbottom=False, bottom=False)
plt.show()
imshow()함수에 워드클라우드(wc)를 넣어줌
마스크 설정 - 모양 변경
Pillow설치가 필요 : !pip install pillow
from PIL import Image
mask = np.array(Image.open("./img/wcmask.png")) #mask로 특정이미지 가져옴
#이미지는 배열 타입으로 바꿔서 넣어줘야 함 (이미지 배열화)
wc = WordCloud(mask = mask, # 마스크 입력
font_path='./gulim.ttc', background_color="white",
collocations=False, width=800, height=800, scale=1)
wc.generate(' '.join(store_df['text_tag'].to_numpy())) # 모델에 텍스트 뭉치 입력
plt.figure(figsize=(5,5))
ax = plt.subplot()
ax.imshow(wc) # 이미지를 표에 입력
ax.set_title('워드클라우드', fontsize=20)
for i in 'top bottom right left'.split():
ax.spines[i].set_visible(False)
ax.tick_params(left=False, right=False, labelleft=False,
labelbottom=False, bottom=False)
plt.show()
가져오는 이미지는 명확하게 검정/흰색 구분되어있는 이미지면 좋음
'데이터 분석 > 키워드 분석' 카테고리의 다른 글
[이론] 텍스트 시각화 - LDA 토픽 모델링 (2) | 2025.01.22 |
---|---|
[이론] 텍스트 시각화 - 네트워크 그래프 (1) | 2025.01.22 |
[이론] 텍스트 시각화 - 빈도 & TF-IDF 그래프 (1) | 2025.01.22 |
[이론] 벡터화 (2) | 2025.01.21 |
[이론] 바이트페어 변환 (2) | 2025.01.21 |