(파이썬-Matplotlib) 시각화 튜토리얼 - 히트맵
Page content
강의 홍보
- 취준생을 위한 강의를 제작하였습니다.
- 본 블로그를 통해서 강의를 수강하신 분은 게시글 제목과 링크를 수강하여 인프런 메시지를 통해 보내주시기를 바랍니다.
스타벅스 아이스 아메리카노를 선물
로 보내드리겠습니다.
- [비전공자 대환영] 제로베이스도 쉽게 입문하는 파이썬 데이터 분석 - 캐글입문기
히트맵 그래프
히트 맵(heat map)은 열을 뜻하는 히트(heat)와 지도를 뜻하는 맵(map)을 결합시킨 단어로, 다양한 강도로 다양한 색상으로 데이터 범위를 시각화하는 데 사용된다. 여기서는 상관 행렬을 열 지도로 표시하는 예를 들 수 있다. 상관 행렬의 요소는 두 변수 사이의 선형 관계의 강도를 나타내며, 행렬에는 주어진 데이터에 포함된 속성의 모든 조합에 대한 그러한 값이 포함되어 있다. 데이터에 5개의 속성이 있는 경우 상관 행렬은 5 x 5 행렬이 된다.
matplotlib
모듈에서는 heatmap
함수는 존재하지 않는다. 대신, imshow
함수를 활용하는 것이 특징이다.
(1) 라이브러리 불러오기
필요한 모듈을 불러온다.
import matplotlib.pyplot as plt
import numpy as np
import seaborn as sns
(2) 데이터 생성
이번에는 seaborn
패키지 내 flights
데이터를 활용한다.
flights = sns.load_dataset("flights")
flights = flights.pivot("month", "year", "passengers")
flights
(3) 그래프 구현
우선 그래프의 사이즈를 지정한다.
plt.figure(figsize = (12, 9))
plt.imshow(flights, cmap = 'hot')
plt.xticks(range(len(flights)), flights.columns, rotation = 20)
plt.yticks(range(len(flights)), flights.index, rotation = 20)
plt.colorbar()
plt.show()
(4) 전체코드
전체 코드는 다음과 같다. 이번에는 색상코드를 YlGnBu
로 바꿔서 작성한다. cmap
을 설정하는 메뉴얼은 다음 사이트(Choosing Colormaps in Matplotlib)를 소개한다.
import matplotlib.pyplot as plt
import numpy as np
import seaborn as sns
flights = sns.load_dataset("flights")
flights = flights.pivot("month", "year", "passengers")
plt.figure(figsize = (12, 9))
plt.imshow(flights, cmap = 'YlGnBu')
plt.xticks(range(len(flights)), flights.columns, rotation = 20)
plt.yticks(range(len(flights)), flights.index, rotation = 20)
plt.colorbar()
plt.show()
matplotlib
을 활용하여 보다 고급적인 시각화를 구현하고 싶다면, Creating annotated heatmaps에서 확인한다.