파이썬 개발

[아토믹데브] 초보자를 위한 파이썬 Folium 지도 만들기: 지역 좌표 쉽게 찍는 방법

atomicdev 2024. 8. 29. 13:33
728x90

Folium을 사용하여 지역 좌표 찍기: 파이썬 초보자를 위한 가이드

Folium은 파이썬에서 지리적 데이터를 시각화할 수 있는 강력한 라이브러리입니다. 이 글에서는 Folium을 사용하여 특정 지역의 좌표를 지도에 찍는 방법을 단계별로 설명하겠습니다. 이 글을 통해 여러분은 간단한 지도를 만들고, 이를 HTML 파일로 저장하는 방법을 배울 수 있습니다.

folium를 사용하여 만들어진 지도(HTML)

 

1. Folium 설치하기

먼저, Folium 라이브러리를 설치해야 합니다. 터미널(또는 명령 프롬프트)에서 다음 명령어를 입력하세요:

pip install folium
 

이 명령어를 입력하면 Folium이 설치됩니다.

2. 기본적인 Folium 지도 만들기

Folium을 사용하여 간단한 지도를 만들어 봅시다. 아래의 코드를 통해 서울을 중심으로 하는 지도를 만들 수 있습니다.

import folium

# 서울을 중심으로 하는 기본 지도 생성
m = folium.Map(location=[37.5665, 126.9780], zoom_start=12)

# 지도를 HTML 파일로 저장
m.save("seoul_map.html")
 

위 코드를 실행하면, seoul_map.html이라는 파일이 생성됩니다. 이 파일을 브라우저에서 열어보면 서울을 중심으로 한 지도가 표시됩니다.

3. 특정 지역에 마커 추가하기

지도를 만들었다면, 이제 특정 위치에 마커를 추가해보겠습니다. 예를 들어, 서울의 주요 랜드마크에 마커를 추가할 수 있습니다.

import folium

# 서울을 중심으로 하는 기본 지도 생성
m = folium.Map(location=[37.5665, 126.9780], zoom_start=12)

# 특정 위치에 마커 추가
folium.Marker([37.5665, 126.9780], popup="Seoul City Hall").add_to(m)
folium.Marker([37.579617, 126.977041], popup="Gyeongbokgung Palace").add_to(m)
folium.Marker([37.551169, 126.988227], popup="Namsan Tower").add_to(m)

# 지도를 HTML 파일로 저장
m.save("seoul_landmarks_map.html")
 

이 코드를 실행하면 서울의 주요 랜드마크에 마커가 찍힌 지도가 seoul_landmarks_map.html로 저장됩니다.

4. 여러 지역의 좌표를 찍는 방법

이제, 여러 지역의 좌표를 한 지도에 찍어보겠습니다. 예를 들어, 경기도와 서울의 주요 지역을 지도에 표시해 보겠습니다.

import folium

# 여러 지역의 위치와 이름 정의
locations = [
    {"name": "동백지구 (용인대학교, 경희대학교 국제캠퍼스 주변)", "lat": 37.279160, "lng": 127.187800},
    {"name": "미사강변도시 (스타필드 하남 주변)", "lat": 37.545120, "lng": 127.214240},
    {"name": "오포읍 (이마트 광주점 근처)", "lat": 37.393630, "lng": 127.220460},
    {"name": "판교역 주변 (판교 테크노밸리)", "lat": 37.394790, "lng": 127.111100},
    {"name": "선릉역 부근", "lat": 37.504497, "lng": 127.048905},
    {"name": "다산신도시 (현대프리미엄아울렛, 메가몰 주변)", "lat": 37.619180, "lng": 127.164680},
    {"name": "디지털미디어시티(DMC)", "lat": 37.577170, "lng": 126.889810},
    {"name": "성북구 안암동 (고려대학교 주변)", "lat": 37.586290, "lng": 127.029460},
    {"name": "고덕국제신도시 (삼성전자 반도체 공장 주변)", "lat": 37.222420, "lng": 127.073960},
    {"name": "광명역 주변 (광명역 롯데아울렛, 이케아 광명점 주변)", "lat": 37.416410, "lng": 126.884970},
    {"name": "서둔동 (성균관대학교 자연과학캠퍼스 주변)", "lat": 37.291950, "lng": 126.972000},
    {"name": "평촌동 (연성대학교, 안양대학교 주변)", "lat": 37.397980, "lng": 126.957430},
    {"name": "상록구 사동 (한양대학교 ERICA 캠퍼스 주변)", "lat": 37.297770, "lng": 126.834300},
    {"name": "의정부역 주변 (신세계백화점, 롯데마트 주변)", "lat": 37.738320, "lng": 127.045760},
    {"name": "오산대학교 주변", "lat": 37.145440, "lng": 127.070900}
]

# 기본 지도 생성 (서울 중심)
m = folium.Map(location=[37.5665, 126.9780], zoom_start=9)

# 위치에 마커 추가
for loc in locations:
    folium.Marker([loc["lat"], loc["lng"]], popup=loc["name"]).add_to(m)

# 지도를 HTML 파일로 저장
m.save("region_map.html")

이 코드를 실행하면, 여러 지역의 위치에 마커가 찍힌 지도가 region_map.html로 저장됩니다.

5. 저장된 지도 파일 확인하기

코드를 실행하여 생성된 HTML 파일을 웹 브라우저에서 열면, 마커가 찍힌 지도를 볼 수 있습니다. 이렇게 하면 여러 지역의 좌표를 시각적으로 확인할 수 있으며, 다양한 프로젝트에 활용할 수 있습니다.

결론

Folium을 사용하여 지도를 만드는 방법을 배웠습니다. 이 라이브러리는 특히 지리적 데이터를 시각화하는 데 강력하며, 여러 응용 프로그램에서 사용할 수 있습니다. 이 글을 통해 간단한 지도 제작부터 여러 지역에 마커를 찍는 방법까지 배웠으니, 다양한 프로젝트에 활용해 보세요!

728x90