Python

(파이썬) 워드 클라우드(word cloud) 만들기

enjoy-country-life 2024. 7. 3. 15:56
반응형

워드 클라우드는 텍스트 데이터를 시각적으로 표현하는 유용한 도구입니다. 주로 텍스트에서 단어의 빈도를 시각화하여 어떤 단어가 얼마나 자주 사용되는지를 한눈에 파악할 수 있도록 합니다. 워드 클라우드는 마케팅, 데이터 분석, 교육 등 다양한 분야에서 활용됩니다.

워드 클라우드의 주요 특징

  1. 빈도 기반 크기 조절: 단어의 크기는 해당 단어의 빈도에 따라 결정됩니다. 자주 등장하는 단어일수록 더 크게 표시됩니다.
  2. 시각적 강조: 텍스트 데이터를 직관적으로 이해할 수 있도록 도와주며, 중요한 단어나 키워드를 쉽게 파악할 수 있습니다.
  3. 사용자 정의 가능: 폰트, 색상, 배경색, 레이아웃 등 다양한 요소를 사용자 정의할 수 있습니다.
  4. 다양한 용도: 소셜 미디어 분석, 고객 피드백 분석, 문서 요약 등 여러 용도로 사용될 수 있습니다.

파이썬에서 워드 클라우드 생성

파이썬에서는 wordcloud 라이브러리를 사용하여 쉽게 워드 클라우드를 생성할 수 있습니다. 이 라이브러리는 텍스트 데이터를 입력으로 받아 워드 클라우드를 생성해 줍니다. 아래는 한글 텍스트를 사용한 워드 클라우드 생성 예제입니다.

 

먼저 필요한 라이브러리를 설치합니다:

pip install wordcloud matplotlib

 

파이썬 코드

import matplotlib.font_manager as fm
from wordcloud import WordCloud
import matplotlib.pyplot as plt

# 텍스트 데이터
text = ""

with open("c:/temp/untitled.txt","r", encoding="utf-8") as f:
    lines = f.readlines()
    for line in lines:
        text += line
        
# 워드 클라우드 생성
wordcloud = WordCloud(width=800, height=400, background_color='white').generate(text)

# 워드 클라우드 시각화
plt.figure(figsize=(10, 5))
plt.imshow(wordcloud, interpolation='bilinear')
plt.axis('off')  # 축 제거
plt.show()

 

혹시 위의 예제에서 사용되는 텍스트 파일이 필요하면 다운받으세요.

untitled.txt
0.00MB

 

결과

(파이썬) 워드 클라우드(word cloud) 만들기

 

한글 출력

텍스트가 한글로 되어 있으면 한글 폰트를 설정하여야 합니다.

import matplotlib.font_manager as fm
from wordcloud import WordCloud
import matplotlib.pyplot as plt

# 텍스트 데이터
text = ""

with open("c:/temp/text_1.txt","r", encoding="utf-8") as f:
    lines = f.readlines()
    for line in lines:
        text += line
        
# 한글 폰트 경로
font_path = 'c:/temp/NanumGothic.ttf'  # 다운로드한 폰트 경로

# 워드 클라우드 생성
wordcloud = WordCloud(font_path=font_path, width=800, height=400, background_color='white').generate(text)

# 워드 클라우드 시각화
plt.figure(figsize=(10, 5))
plt.imshow(wordcloud, interpolation='bilinear')
plt.axis('off')  # 축 제거
plt.show()

(파이썬) 워드 클라우드(word cloud) 만들기

 

text_1.txt
0.00MB

 

 

 

 

반응형