[python] Bokeh를 이용한 히트맵 생성

Bokeh는 Python에서 인터랙티브한 시각화를 위해 사용되는 인기 있는 라이브러리입니다. 이번 포스트에서는 Bokeh를 사용하여 히트맵을 생성하는 방법을 알아보겠습니다.

Bokeh 설치

먼저, Bokeh 라이브러리를 설치해야 합니다. 다음 명령을 사용하여 설치할 수 있습니다.

pip install bokeh

데이터 준비

히트맵을 생성하기 위해 데이터를 준비해야 합니다. 예를 들어 다음과 같은 2D 리스트 형태의 데이터를 사용해보겠습니다.

data = [
    [10, 20, 30],
    [40, 50, 60],
    [70, 80, 90]
]

이 데이터는 3x3 크기의 격자에 대한 값들을 나타냅니다.

히트맵 생성

Bokeh를 사용하여 히트맵을 생성하기 위해서는 먼저 bokeh.plotting 모듈을 임포트해야 합니다.

from bokeh.plotting import figure, show

플롯을 생성하고 데이터를 기반으로 히트맵을 추가할 수 있습니다.

p = figure(x_range=[0, len(data[0])], y_range=[0, len(data)], width=400, height=400, toolbar_location=None)
p.rect(x="x", y="y",
       width=1, height=1,
       source=data,
       fill_color={'field': 'value', 'transform': color_mapper})

여기서 x_rangey_range는 x와 y 축에 대한 범위를 설정하는 것입니다. widthheight는 그래픽의 크기를 설정합니다.

rect 함수를 사용하여 히트맵을 추가합니다. x, y는 해당 데이터의 x와 y 인덱스를 의미하며, width, height는 각 셀의 크기를 정의합니다. fill_color는 셀의 색상을 나타냅니다.

마지막으로, show 함수를 호출하여 플롯을 렌더링합니다.

show(p)

결과 확인

위의 코드를 실행하면 Bokeh가 제공하는 인터랙티브한 히트맵이 생성됩니다.

히트맵

마무리

이번 포스트에서는 Bokeh를 이용하여 히트맵을 생성하는 방법을 알아봤습니다. Bokeh의 다양한 기능들을 활용하여 인터랙티브하고 멋진 시각화를 구현하실 수 있습니다. Bokeh의 공식 문서를 참조하여 더 많은 기능을 알아보시기 바랍니다.

참고 자료