[부스트캠프 AI-Tech] 4주차 Day 4

LKM·2022년 2월 16일
0

✏️학습 정리


5-1. Polar Coordinate

  • Polar Plot
    • 극 좌표계를 사용하는 시각화

    • 회전, 주기성 등을 표현하기에 적합

    • projection = polar 를 추가

    • 직교 좌표계 X, Y에서 변환 가능

  • Radar Chart

    • 극 좌표계를 사용하는 대표적인 차트

    • 중심점을 기준으로 N개의 변수 값을 표현

    • 데이터의 Quality 표현에 좋음

      • 캐릭터의 능력치
      • 운동 선수 분석....
    • 주의점

      • 각 feature는 독립적, 척도가 같아야한다! (키와 나이의 경우 척도가 완전 다르다!)

      • feature의 순서에 따라 많이 달라진다.

      • feature가 많아지면 가독성이 떨어짐.

<실습>

  • Polar Coordinate 만들기

    • subplot(..., projection=’polar’) 또는 subplot(..., polar=True)
    • scatter() , bar() , plot() , fill() 표현가능
  • Polar Coordinate 조정

    • set_rmax() : 반지름 조정
    • set_rmin(1) : 중심이 1로 바뀌게 된다.
    • set_rticks() : 반지름 표기 grid 조정
    • set_rlabel_position: 반지름 label이 적히는 위치의 각도 조정
    • set_thetamin() : 각도의 min 값
    • set_thetamax() : 각도의 max값
  • Radar Chart

    • polar coordinate의 fill을 적합하게 사용하면 radar chart 사용 가능
    • set_thetagrids() : 각도에 따른 grid 및 ticklabels 변경
    • set_theta_offset() : 시작 각도 변경



5-2. Pie Charts

  • Pie Chart

    • 원을 부채꼴로 분할하여 표현하는 통계 차트

    • 가장 많이 사용하지만.... 지양해야한다!

      • 비교 어렵고, 유용성 떨어짐.
      • 오히려 bar plot이 더 유용 (길이가 비교하기 더 쉽다!)
  • Pie Chart

    • Donut Chart

    • Sunburst Chart
      - 계층적 데이터를 시각화

<실습>

  • Pie Chart
    • ax.pie() : 기본 파이차트 그리기

    • bar plot과 비교

      —> bar plot이 비교하기 훨씬 쉽다!

  • Pie Chart Custom

    • ax.pie(..., startangle=각도) : 시작 각도 설정

    • ax.pie(..., explode=리스트) : 특정 부분 강조

    • ax.pie(..., shadow=True) : 차트에 그림자 표시

    • ax.pie(..., autopct='%1.1f%%') : 차트에 퍼센트 표시 (소수점 조절 가능)

    • ax.pie(..., labledistance=거리) : label을 차트와 떨어뜨린다.

    • ax.pie(..., rotatelabels=각도) : 중심점 기준으로 label의 각도 회전 (지양)

    • ax.pie(..., counterclock=False) : 차트 생성 방향

    • ax.pie(..., radius=길이) : 원 반지름

  • Pie Chart 변형

    • Donut Chart
      • 가운데에 흰색 pie chart 생성



5-3. 다양한 시각화 라이브러리

  • Missingno
    • 결측치를 시각화

  • Treemap
    • 계층적 데이터의 대표적 시각화

    • 직사각형을 사용하여 포함 관계를 표현

    • 타일링 알고리즘에 따라 형태가 다양해짐

    • 모자이크 플롯과 유사

  • Waffle Chart
    • 와플 형태로 discrete하게 값을 나타내는 차트

    • Icon을 사용한 Waffle Chart도 가능 (Pictogram Chart)

  • Venn
    • 집합 등에서 사용하는 벤 다이어그램

    • 원이 4개 이상부터는 값을 확인하기 어려움

<실습>

  • MissingNo

    • msno.matrix() : 결측치를 matrix로 나타내어 흰 부분으로 표시
    • msno.matrix(..., sort=’descending’) : 정렬하여 더 보기 쉬워짐
    • msno.bar() : 직접적으로 bar chart로도 그리기 가능
  • Treemap

    • potly에서 더 자세히..

    • squarify.plot() : 랜덤 색상으로 treemap 생성

    • squarify.plot(..., pad=0.2) : 직사각형 사이의 공간 생성

    • squarify.plot(..., text_kwargs={}) : 텍스트 요소를 딕셔너리로 전달

  • Waffle Chart

    • plt.figure(FigureClass=Waffle,..) : 기본 Waffle Chart
    • plt.figure(..., legend={}) : 범례 설정
    • plt.figure(..., cmap_name='tab10') : 컬러맵을 전달해서 색 변경
    • plt.figure(..., starting_location='SE') : 네 꼭지점을 기준으로 시작점 설정 가능
    • plt.figure(..., vertical=True) : 기본적으로 가로로 진행, 설정시 세로로 진행
    • plt.figure(..., block_arranging_style='new-line') : 어떤 식으로 나열할지 설정, 기본은 snake
    • plt.figure(..., icon='child') : 아이콘 명칭
  • Venn

    • venn2(subset = (3, 2, 1))

    • 01: 1번째 set에 들어갈 내용

    • 10: 2번째 set에 들어갈 내용

    • 11: 교집합에 들어갈 내용

    • 3개의 서브셋

    • venn3(subsets = (1, 2, 3, 4, 5, 6, 7), set_labels = ('Set1', 'Set2', 'Set3'))

profile
함께 자라기

0개의 댓글