데이터가 다양한 범주형 값을 갖고 있는 경우,
시각화할 수 있는 방법 중 하나는 패싯 그리드facet grid를 이용하는 것이다.
패싯 그리드는 2차원 레이아웃으로 그래프를 배치해서
특정 변수의 구분되는 값들을 각 축 단위로 비교할 수 있게 한다.
예를 들어,
앞선 포스팅에서 쓰였던 tips 데이터를 갖고
요일별/시간별/흡연여부별 팁 비율을 보고 싶다고 해 보자.
시본의 내장함수 중 하나인 catplot을 쓰면 쉽게 그릴 수 있다.
결과는 위와 같다.
col로 지정한 smoker의 값에 따라 그래프가 자동으로 2개로 나뉘어지고,
time을 hue로 지정했기 때문에 각 요일별로 그래프 2개가 나란히 표시된다.
이제 그래프의 차원을 2×2 차원으로 변경하고,
time으로 그룹을 만드는 대신 막대그래프의 색깔로 표시해 보자.
time을 hue 대신 row의 인수로 넘기면
시간과 흡연여부에 따른 요일별 팁 비율 그래프를 얻을 수 있다.
catplot은 시각화 목적에 어울리는
다른 종류의 그래프도 여러 개 지원한다.
예를 들어 이 경우에은 박스플롯box plot이 효과적인 시각화 방법일 수도 있다.
즉,
이렇게 일반적인 용도의 seaborn.FacetGrid 클래스를 이용해
나만의 패싯 그리드를 만들고 원하는 그래프를 그릴 수도 있다.
역시나 자세한 내용은 공식 문서를 참조하자.
파이썬에서 그래프를 그릴 수 있는 라이브러리는
맷플롯립과 시본 외에도 많지만,
웹에서만 쓸 정적 그래프를 생성하기에는 위의 두 가지만 제대로 익혀도 충분하다.
정말 빡센 시각화가 필요하다면 아예 태블로같은 별도의 시각화 툴로 넘어가도 되고.