folium은 Python에서 지도 시각화를 위한 라이브러리이다. leaflet.js를 기반으로 만들어졌으며, leaflet.js의 모든 기능을 활용할 수 있다.
pip install folium
folium을 사용하기 위해서는 먼저 지도 객체를 생성해야 한다. 지도 객체는 Map 클래스의 인스턴스로 생성할 수 있다.
import folium
m = folium.Map(location=[37.566345, 126.977893], zoom_start=13)
m
# 마커 추가
folium.Marker(location=[37.566345, 126.977893], popup='서울특별시청').add_to(m)
# 지도 출력
m
# 서클 마커 추가
folium.CircleMarker(location=[37.566345, 126.977893], radius=50, color='#3186cc', fill_color='#3186cc', popup='서울특별시청').add_to(m)
# 지도 출력
m
# 다중 마커 추가
locations = [[37.566345, 126.977893], [37.564214, 126.975191], [37.568409, 126.985731]]
popups = ['서울특별시청', '덕수궁', '서울역']
for i in range(len(locations)):
folium.Marker(location=locations[i], popup=popups[i]).add_to(m)
# 지도 출력
m
m = folium.Map(location=[37.566345, 126.977893], zoom_start=13, tiles='Stamen Toner')
# 지도 출력
m
import folium
import pandas as pd
# 데이터 불러오기
state_geo = 'https://raw.githubusercontent.com/python-visualization/folium/master/examples/data'
state_unemployment = f'{state_geo}/US_Unemployment_Oct2012.csv'
state_data = pd.read_csv(state_unemployment)
# choropleth 맵 만들기
m = folium.Map(location=[48, -102], zoom_start=3)
folium.Choropleth(
geo_data=f'{state_geo}/us-states.json',
name='choropleth',
data=state_data,
columns=['State', 'Unemployment'],
key_on='feature.id',
fill_color='YlGn',
fill_opacity=0.7,
line_opacity=0.2,
legend_name='Unemployment Rate (%)'
).add_to(m)
folium.LayerControl().add_to(m)
m