✔ Python/2. Visualization

[Folium] Folium plugins - 미니맵 생성 및 속성

  • -
주제: Folium 미니맵 표출하기
작성: 2023-10-24
구동 환경:
OS: MacBook Pro 14″ /  Python : 3.9.18 / Folium : 0.14.0 

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 지도 생성

미니맵 생성

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)
  • width, height : 미니맵 크기 조절
import folium
from folium.plugins import MiniMap

m = folium.Map(location=(36.429, 127.977), zoom_start=8)
minimap = MiniMap(toggle_display=True, tile_layer='Stamen Toner', position='bottomright',
				width=200, height=200, zoom_level_offset=-6)
minimap.add_to(m)
m.save("testmap.html")

미니맵 position 설정 옵션 - topleft, topright, bottomleft, bottomright

 

버전 확인

본인이 사용하고 있는 folium 버전이 궁금하신 분들은 아래와 같이 확인하시면 됩니다

import folium
print(folium.__version__)

Reference

  1. Folium plugins 예시 코드(1) : https://dailyheumsi.tistory.com/85
  2. Folium plugins 예시 코드(2) : https://github.com/python-visualization/folium
  3. Folium 히트맵 코드 : https://m.blog.naver.com/life4happy/222161099861

728x90
반응형
Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.