NAVER Boostcamp AI Tech/Level 1

[Week 3] Introduction to Data Visualization

sdbeans 2022. 2. 4. 14:40

What is data visualization? 데이터 시각화란?

to represent data with graphics; need to map data to graphics

데이터 시각화를 통해 데이터를 그래픽으로 맵핑시킨다.

 

Factors (tasks) to consider 시각화할 때 고려할 것들

  • objective 목적. 왜?
  • audience. 누구를 위해?
  • data 데이터. 어떤 종류?
  • story 이야기. 인사이트를 어떤 순서로 전달할 것인가?
  • method 방법. 어떻게 효과적으로 콘텐츠를 전달할 것인가?
  • design 디자인. UI 등.

Elements of Data Visualization 시각화의 요소

1. Understanding Data 데이터 이해하기

Ways to look at data 데이터를 보는 관점

  • global. 데이터셋 관점
  • local. 각각 데이터 포인트 관점

Different kinds of datasets 데이터셋의 종류

  • 정형 데이터 tabular data

보통 csv, tsv 파일로 저장된다. 각 행은 하나의 데이터 포인트/item, 각 열은 하나의 attribute/feature를 나타낸다. 각 데이터 포인트를 비교하면서 feature들 사이의 특징과 관계를 찾아낸다. statistical 한 통계적 특징을 찾는다.

  • 시계열 데이터 time-series data

시간이 하나의 feature로, 시간과 데이터 간의 관계가 있다. 데이터의 trend 추세, seasonality 계절성, cycle 주기성 등을 찾는다. 예시로는 temperature 온도, stock market 주식 등의 정형 데이터, 그리고 audio 소리, video 영상 등의 비정형 데이터가 있다.

  • 지리/지도 데이터 geospatial data

지도에 데이터를 간단하게 표현한다. 지도위에 위치와 다른 feature/information을 함께 표시한다. 구글 맵스에 여러 view가 있는 것처럼 다양하게 정보를 나타낼 수 있다. feature의 예시로 지도상의 distance 거리, path 경로, distribution 분산, 그리고 latitude and longitude 경도와 위도가 있다. 

  • 관계 데이터 relation data

객체와 객체 간의 관계를 시각화 할 수 있다. Graph/network visualization이라고도 한다. 각 object 객체는 node로 표현되고 각 relation 관계는 link로 표현하고, 각 node는 hierarchical 계층적인 순서로 배치된다. 파일 형태는 json, 2D array, linked list가 있다. Size 크기, color 색상, number 숫자 등으로 각 node와 link의 weight를 나타낸다.

  • 계층적 데이터 hierarchical data

회사 조직도나 가족 관계도 같이 특정 계층이 나뉘어 있는 데이터이다. 관계 데이터와 비슷하게 relation을 표현하지만, 뚜렷하게 그룹과 레벨로 나눠져 있다. 많이 쓰이는 structure 구조로는 tree, treemap, sunburst 등이 있다.

 

Characteristics of dataset types 데이터 종류

  • 수치형 numerical
    • 연속형 continuous: e.g. length, weight, temperature
    • 이산형 discrete: e.g. rolling a dice, population size

 

  • 범주형 categorical
    • 명목형 nominal: e.g. religion, blood type, MBTI
    • 순서형 ordinal: e.g. grade year in school

 

2. Understanding Visualization 시각화 이해하기

Mark 마크

이미지의 가장 기본적인 그래픽한 요소다. 데이터 시각화를 이루는 points 점, lines 선, areas 면이고, 이 요소들을 다양하게 배치하는 게 데이터 시각화이다.

Channel 채널

마크가 어떻게 보여지는지 컨트롤하지만, 마크의 차원을 건들지 않는다. 각 마크를 어떻게든 변경하는 요소들이다. 예시로는 position 위치, shape 모양, size 크기, volume 부피, tilt 기울기, color 색상 등이 있다.

Pre-attentive attibutes 전주의적 속성

말 그대로 주의를 주지 않고 알 수 있는 속성이기에 차이점을 아주 잘 알아차릴 수 있다. 하지만, 뭐든 과하면 안 좋다. 동시에 여러 속성들을 바꾸면 알아차리기 힘들다, 즉 visual pop-out 시각적으로 분리하기 힘들다. 가장 대표적인 요소는 색상이다. color가 하나만 다르면 눈에 띄지만, 여러 가지 색상을 다 넣으면 색 하나를 찾기 힘들다.

 


Python and Matplotlib

matplotlib는 보통 줄여서 mpl이라고 한다.

import matplotlib as mpl

matplotlib에서 많이 쓰는 pyplot은 plt라고 보통 줄인다. 이것은 순차적인 방법으로 수행하기에 pythonic 하지 않다.

import matplotlib.pyplot as plt