Seaborn은 Python 라이브러리로 데이터를 시각화할 때 유용하게 사용되는 라이브러리입니다. 그리고 Seaborn은 matplotlib를 기반으로 하고 있어 matplotlib.pyplot과 함께 사용됩니다.
다음은 예시 코드입니다.
# !pip install seaborn
import seaborn as sns # 통용적으로 sns라는 약어로 사용이 됩니다.
import matplotlib.pyplot as plt
# 예시로 y = 2x의 그래프를 그려보겠습니다.
x_values = [0, 1, 2, 3, 4, 5]
y_values = [0, 2, 4, 6, 8, 10]
# 1. 꺾은선 그래프로 출력
sns.lineplot(x = x_values, y = y_values) # 꺾은선 그래프로 그리기
plt.show() # 그린 그래프 출력
# 2. 막대 그래프로 출력
sns.barplot(x = x_values, y = y_values) # 막대 그래프로 그리기
plt.show() # 그린 그래프 출력
# 3. plot의 기타 메서드
plt.figure(figsize = (width, height)) # plot 그래프의 크기를 결정합니다. 다른 plot 메서드보다 가장 먼저 작성해야 합니다.
plt.xlabel("x축의 이름")
plt.ylabel("y축의 이름")
plt.title("그래프의 이름")
plt.xlim({minimum}, {maximum}) # x축의 범위를 결정. min ~ max
plt.ylim({minimum}, {maximum}) # y축의 범위를 결정. min ~ max
WordCloud는 python의 텍스트 클라우드 라이브러리로, 단어들의 빈도 수에 맞춰 해당 단어들의 크기를 조절하여 예쁘게 그려주는 기능을 가지고 있습니다.
예시 이미지 ( WordCloud )
konlpy는 한국어 형태소 분석기 라이브러리입니다. 해당 라이브러리를 이용하면 문장에서 단어들을 추출할 수 있습니다. 예) : "동해물과 백두산이 ~~" -> "동해물", "백두산", ..
다음은 애국가의 가사에서 단어들의 빈도 수를 추출하여 이를 wordcloud로 그려주는 예시 코드입니다.
# !pip install wordcloud
# !pip install konlpy
import matplotlib.pyplot as plt
from wordcloud import WordCloud # WordCloud 객체 import
from collections import Counter # 빈도 수를 카운트하기 위한 Counter 객체 import
from konlpy.tag import Hannanum # 문장에서 명사를 추출하는 형태소 분석기 Hannanum(한나눔) 객체 import
lyrics = """
동해물과 백두산이 마르고 닳도록
하느님이 보우하사 우리나라 만세
무궁화 삼천리 화려 강산
대한 사람 대한으로 길이 보전하세
"""
hannanum = Hannanum() # 한나눔 객체 생성
nouns = hannanum.nouns(lyrics) # 문장 lyrics로부터 nouns(명사)들을 추출
words = [noun for noun in nouns if len(noun) > 1] # 단어 길이가 1이 넘는 단어들을 words에 저장한다.
counter = Counter(words) # words에 들어있는 단어들의 빈도 수를 {"단어": 빈도 수}로 카운트한다.
wordcloud = WordCloud(
font_path = "C:/Windows/Fonts/NGULIM.ttf", # 기본적으로 wordcloud에서 한글은 지원이 되지 않습니다.
# 따라서 개인적으로 폰트 파일을 지정해줘야 합니다.
background_color = "white",
width = 1500,
height = 1500
)
img = wordcloud.generate_from_frequencies(counter) # counter로부터 단어들의 빈도 수에 맞춰서 이미지 객체 생성.
plt.imshow(img) # 해당 이미지 객체 그리기.
이전 예시 이미지가 위 코드로부터 출력된 이미지입니다.