Python 지도 라이브러리, Folium은 다양한 방식으로 지도를 시각화하는데 도움을 주는 라이브러리입니다. 더불어 Folium plugins을 통해 그 기능을 확장할 수 있습니다. 예를 들어, 지도를 확대해서 데이터를 파악하다보면, "내가 선택한 이 지역이 어디지?" 하면서 다시 지도를 축소해본 경험이 있으실 겁니다. 사용자의 편의성을 배려하여 미니맵 배치를 통해 현재 확대한 위치가 어디인지 파악이 가능합니다.
기본 지도설정
우선 기본코드를 중심으로 기타 옵션들 하나씩 추가해보면서 속성을 다뤄보도록 하겠습니다. 지도는 Folium 라이브러리를 활용하도록 하겠습니다. 기본적인 지도표출은 다음과 같이 할 수 있습니다.
pip install folium # 설치 안되어있는 경우, 설치 필요
import folium
m = folium.Map(location=(36.429, 127.977), zoom_start=8)
m.save("./test.html")
미니맵 생성
folium.plugins에는 MarkerCluster, MiniMap, Heatmap 등 다양하게 구현가능한 코드를 제공합니다. 그럼 기존 코드에서 미니맵을 생성해보도록 하겠습니다.
import folium
from folium.plugins import MiniMap # 추가
m = folium.Map(location=(36.429, 127.977), zoom_start=8)
minimap = MiniMap() # 추가
minimap.add_to(m) # 추가
m.save("./test.html")
미니맵 속성
미니맵 속성파악해보도록 하겠습니다.
toggle_display : 토글 표출 속성
zoom_level_offset : 원래 지도 대비 축소수준 설정
import folium
from folium.plugins import MiniMap
m = folium.Map(location=(36.429, 127.977), zoom_start=8)
minimap = MiniMap(toggle_display=True, zoom_level_offset=-6)
minimap.add_to(m)
m.save("testmap.html")
전체코드
메인 지도처럼 미니맵의 경우에도 크기, 타일 모두 적용이 가능합니다.
position: 미니맵 위치 설정(topleft, topright, bottomleft, bottomright)