본문 바로가기

Theory/DataScience

지리적 정보를 시각화할 때 괜찮은 Python 지도 모듈 Folium

이 글은 버전 0.3.0까지는 맞으며, 17년 11월 현재 최신인 0.5.0에서는 일부 에러가 납니다.

TypeError: choropleth() got an unexpected keyword argument 'geo_path'

위와 같은 에러가 나타나면 버전 문제가 발생한 것이며, [바로가기]를 읽으시길 바랍니다.

얼마전에 구글의 지도 정보를 활용하는 API에 대해 이야기[바로가기]했었는데요. 이번에는 지도 정보를 시각화하는 Python의 많은 모듈중에 Folium을 소개할까 합니다. 다양한 모듈 만큼이나 다양한 기능들이 있지만 Visual 측면에서 저는 Folium이 마음에 들더라구요^^

Anaconda에서는 conda install은 안되구요. 윈도우 터미널로 pip install folium 명령으로 설치해야 합니다.

그러면 이렇게 import가 잘 되겠죠^^

근본적으로 위도(latitude), 경도(longitude) 값을 알고 있다면 위 그림처럼 바로 지도 결과가 나타납니다.^^.

zoom_start라는 옵션으로 처음 지도를 그릴때 확대 축소 정도를 잡아 줄 수 있구요.

기본적인 모양이 아니라 위 그림과 같은 스타일의 지도도 tiles='Stamen Toner'라는 옵션으로 선택해볼 수 있습니다.

또.. tiles='Stamen Terrain'이라는 옵션으로 위 그림과 같은 스타일의 지도를 선택할 수 있습니다.

그리고, 원하는 곳에 Markerpopup을 설정할 수 있습니다. 그리고 마커를 add_to 속성으로 지도객체에 포함시키면 됩니다,

아... icon=folium.Icon(icon='cloud')으로 마커의 아이콘을 구름모양으로 잡을 수 있습니다.

그럼 이제 다양한 아이콘을 위 그림처럼 사용할 수 있지요^^

마커만 되는 것은 아니구요. folium.CircleMaker로 범위를 가진 원모양의 마커도 가능합니다. 색상과 크기를 모두 지정할 수 있지요^^

마커로 다양한 다각형 모양도 가능합니다. 다각형의 수는 number_of_sides로 설정됩니다.

[바로가기]에서 미국의 실업률이라는 csv 파일을 받을 수 있습니다. 각 주별 2012년 실업율이 저장되어 있는 파일인데요.

아... 혹시 이상한 FutureWarning이 싫으신 분들은 위 옵션을 사용하세요^^ 그리고,

역시 방금 링크에서 미국 주 정보의 지리 정보를 가지고 있는 json파일을 받아서 위와 같이 저장하시고...

그리고나면 위 그림처럼 주별 실업률 데이터가 이렇게 잘 시각화 되는 것을 알 수 있답니다.^^

뭐 그냥 있기 뭐하니 우리나라 서울도 살짝~~^^

ㅎㅎ 다음 글에서 서울과 관련된 재미있는 지도 시각화를 해볼께요^^

반응형