[Boostcamp AI Tech] Data Viz 1강

이성범·2022년 2월 3일
0

Boostcamp AI Tech

목록 보기
17/49

Introduction to Visualization

이번 강에서는 데이터를 조금 더 효과적으로 표현할 수 있는 시각화 기법의 기본에 대하여 학습을 진행했다.

00. 학습 내용

  • 시각화의 요소에 대하여 학습
  • 간단한 Matplotlib 사용법에 대하여 학습

01. 시각화의 요소

  • 데이터 시각화데이터그래픽 요소매핑하여 시각적으로 표현하는 것
  • 시각화는 다양한 요소가 포함된 Task
    • 목적 : 왜 시각화를 하는가?
    • 독자 : 누구를 위하여 시각화를 하는가?
    • 데이터 : 어떤 데이터로 시각화를 하는가?
    • 스토리 : 어떤 흐름으로 인사이트를 전달할 것인가?
    • 방법 : 전달하고자 하는 내용에 맞는 효괴적인 방법을 사용하고 있는가?
    • 디자인 : UI에서 만족스러운 디자인을 가지고 있는가?ㄴ
  • 데이터 시각화를 위해서는 데이터가 필요!
  • 데이터셋의 종류
    • 정형 데이터
      • 가장 쉽게 시각화할 수 있는 데이터 셋
      • 통계적 특정, feature 사이 관계, 데이터간 관계, 데이터 간 비교 등의 시각화를 할 수 았음
    • 시계열 데이터
      • 시간 흐름에 따른 Time-Series 데이터
      • 시간 흐름에 따른 추세(Trend), 계절성(Seasonality), 주기성(Cycle) 등이 존재
      • 기온, 주가 등 정형데이터와 음성, 비디오와 같은 비정형 데이터 존재
    • 지리 데이터
      • 지도 정보와 보고자 하는 정보 간의 조화 중요 + 지도 정보를 단순화 시키는 경우도 존재
      • 거리, 경로, 분포 등 다양한 데이터를 시각화함
    • 관계형(네트워크) 데이터
      • 객체와 객체 간의 관계를 시각화 (Graph visualization / Network Visualization)
    • 계층적 데이터
      • 관계 중에서도 포함관계가 분명한 데이터 (네트워크 시각화로도 표현 가능)
      • Tree, Treemap, Sunburst 등이 대표적
    • 다양한 비정형 데이터
      • Image, Text 등등
    • ETC

02. 간단한 Matplotlib 사용법

  • Matplotlib은 Python에서 사용할 수 있는 시각화 라이브러리
  • numpy와 scipy를 베이스로 하여 다양한 라이브러리와 호환성이 좋음
  • matplotlib에서 그리는 시각화는 Figure라는 큰 틀에 Ax라는 서브플롯을 추가해서 만듬
  • 즉, Figure라는 도화지에 Ax라는 그림들을 추가해 나간다고 생각하면 됨
fig = plt.figure()

x1 = [1, 2, 3]
x2 = [3, 2, 1]

ax1 = fig.add_subplot(211) 
ax2 = fig.add_subplot(212) 

ax1.plot(x1) # ax1에 그림
ax2.plot(x2) # ax2에 그림
plt.show()
  • 위와 같이 간단한 방식으로 2개의 서브플롯을 그릴 수 있음 (하나의 서브플롯 안에 여러개의 그래프도 그릴 수 있음)
  • 각각의 서브플롯에 color, label, set_title, set_xticks, set_xticklabels 등의 parameter, 함수 등을 이용해 그래프를 조금 더 효과적으로 표현할 수 있음
  • text 함수를 이용하면 각 서브플롯에 원하는 위치에 원하는 글씨를 추가할 수 도 있음
  • 이렇듯 matplotlib은 다양한 시각화를 할 수 있는 라이브러리임
profile
Machine Learning Engineer at Konan Technology

0개의 댓글