다양한 시각화 Library

홍찬우·2023년 7월 23일
0
post-custom-banner

Missingno

결측치 시각화
pip install missingno

  • 두 가지 형태로 결측치 정보 제공


Treemap

계층적 데이터를 직사각형을 사용해 포함관계를 나타냄
타일링 알고리즘
모자이크 플롯 (Mosaic plot)과 유사
pip install squarify or Plotly의 treemap

  • world → Asia → China와 같이 계층적인 구조를 확인 가능


Waffle Chart

와플 형태로 discrete하게 값을 나타냄
bar plot을 정사각형 형태로 쪼갠 느낌
pip install pywaffle

  • 정사각형이 아닌 Icon을 사용한 Pictogram chart로도 사용 가능


Venn

벤 다이어그램
pip install pyvenn or pip install matplotlib-venn





실습

Missingno

import missing no as msno
msno.matrix(titanic)

  • 각 feature의 결측치 상태를 보여줌
  • 공백이 결측치


msno.bar(titanic)

  • bar plot으로도 이용 가능


Treemap

squarify 라이브러리 사용
pie chart와 사용이 유사

  • squarify.plot([100, 200, 300, 400])

label 파라미터로 각 구역에 labeling
color 파라미터로 각 구역 color 설정
pad 파라미터로 margin 설정
matplotlib 문법으로 깔끔하게 나타낼 수 있음



  • ax.axis(”off”)




Waffle

from pywaffle import Waffle
fig = plt.figure(
    FigureClass=Waffle, 
    rows=5, 
    columns=10, 
    values=[48, 46, 6],
    figsize=(5, 3)
)
  • plt figureclass에 Waffle 형태로 지정
  • row, column으로 waffle 크기 지정


  • [48, 46, 6]을 row * col = 50 칸으로 나눠 waffle을 채움
  • 한 칸에 2

data를 dictionary로 전달해 legend 조정 가능

starting_locationNW, SW, NE, SE로 시작점의 기준을 잡아줌

vertical True면 값이 세로로 진행됨, default는 가로 진행

icons 아이콘 명칭

icon_legend True이면 legend에도 icon 사용

font_size 아이콘 사이즈

block_arranging_style

  • default는 snake
  • new-line이면 데이터가 끝나면 다음 줄로 넘어감





Venn

from matplotlib_venn import venn2
venn2(subsets=(3, 2, 1))
  • 이진법을 사용해서 인덱싱 가능
  • set을 전달하면 자동으로 counting
    from matplotlib_venn import venn3
    set1 = set(['A', 'B', 'C', 'D'])
    set2 = set(['B', 'C', 'D', 'E'])
    set3 = set(['C', 'D',' E', 'F', 'G'])
    
    venn3([set1, set2, set3], ('Set1', 'Set2', 'Set3'))
    plt.show()
    • 겹치는 부분을 자동으로 계산해 나타내줌






※ 모든 이미지 및 코드 출처는 네이버 커넥트재단 부스트캠프 AI Tech 5기입니다. ※

profile
AI-Kid
post-custom-banner

0개의 댓글