Bokeh은 파이썬 기반의 시각화 라이브러리로, 데이터를 인터랙티브한 형태로 시각화할 수 있게 해줍니다. Bokeh의 강력한 기능 중 하나는 사용자가 쉽게 스타일 및 테마를 적용할 수 있다는 것입니다. 이를 통해 시각화 결과물을 더욱 독특하고 맞춤화된 형태로 표현할 수 있습니다.
Bokeh 테마
Bokeh에서는 사용자가 자신만의 테마를 정의하고 적용할 수 있습니다. 테마는 시각화에 적용되는 다양한 속성과 스타일을 포함하고 있으며, 화면의 배경색, 축의 색상, 폰트 스타일 등을 변경할 수 있습니다. 이는 시각화의 일관성을 유지하고, 시각적 요소들을 조율하는 데 유용합니다.
from bokeh.io import curdoc
from bokeh.themes import Theme
# 사용자 정의 테마 작성
custom_theme = Theme(json={
"attrs": {
"Plot": {
"toolbar_location": None,
"border_fill_color": "lightgray",
"min_border_left": 80
},
"Grid": {
"grid_line_color": "white",
"grid_line_width": 1
},
"Title": {
"text_color": "navy",
"font": "helvetica",
"text_font_size": "18pt"
}
}
})
# 현재 문서에 테마 적용
curdoc().theme = custom_theme
위의 예시에서는 Bokeh의 자체 테마 인터페이스를 사용하여 사용자 정의 테마를 작성하고, 현재 문서에 적용하는 방법을 보여줍니다. Theme
클래스의 json
매개변수를 사용하여 각 요소의 스타일을 지정할 수 있습니다. 이 예시에서는 플롯의 툴바 위치, 플롯의 테두리 색상, 그리드의 선 색상 및 두께, 제목의 텍스트 색상, 글꼴 스타일 및 크기 등을 변경합니다.
Bokeh 스타일
Bokeh에서는 스타일을 적용하여 시각화 결과물에 다양한 효과를 부여할 수 있습니다. 여러 가지 스타일 요소를 사용하여 그래프의 색상, 선 스타일, 마커 모양, 폰트 스타일 등을 변경할 수 있습니다.
from bokeh.plotting import figure
# 스타일을 적용한 그래프 생성
p = figure(plot_width=400, plot_height=300)
p.circle([1, 2, 3, 4, 5], [6, 7, 2, 4, 5], size=20, color="orange", alpha=0.5, line_width=2, line_color="blue")
# 그래프 요소에 스타일 적용
p.title.text_color = "green"
p.title.text_font = "helvetica"
p.title.text_font_size = "18pt"
p.xaxis.axis_label = "X축"
p.xaxis.axis_label_text_color = "gray"
p.xaxis.axis_label_text_font_style = "italic"
p.yaxis.axis_label = "Y축"
p.yaxis.axis_label_text_color = "gray"
p.yaxis.axis_label_text_font_style = "italic"
p.background_fill_color = "lightyellow"
p.border_fill_color = "lightblue"
# 그래프 출력
show(p)
위의 예시에서는 plot_width
와 plot_height
를 사용하여 그래프의 크기를 지정하고, circle
메서드를 사용하여 데이터를 산점도로 표현합니다. size
, color
, alpha
, line_width
, line_color
등의 속성을 사용하여 점의 크기, 색상, 투명도, 선의 두께 및 색상에 대한 스타일을 지정할 수 있습니다.
p.title
, p.xaxis
, p.yaxis
등의 속성을 사용하여 제목, x축 및 y축 레이블에 대한 스타일을 지정할 수 있습니다. 마지막으로 그래프의 배경 색상과 테두리 색상을 변경하기 위해 background_fill_color
와 border_fill_color
속성을 사용합니다.
Bokeh을 사용하여 사용자 지정 스타일 및 테마를 적용하면 시각화 결과물을 보다 개성적이고 독특하게 만들 수 있습니다. 다양한 스타일 및 테마 설정을 통해 데이터를 효과적으로 전달할 수 있으며, 시각적 요소들을 조율하여 일관된 시각화를 구현할 수 있습니다.