상세 컨텐츠

본문 제목

"파이썬과 함께하는 '지도 시각화 여행' 수업"

Edutech/AI(인공지능)

by One day _Haru 2023. 4. 13. 17:02

본문

파이썬에 대해 아무것도 몰라도 파이썬 지도 시각화를 쉽게 따라할 수 있다면 어떨까? 이번에는 저처럼 파이썬에 대해 아무것도 모르는 교사를 대상으로 파이썬 지도 시각화 수업에 대해 소개해 보려고 한다. 

 

파이썬을 처음 접하는 초보자일지라도 지도 시각화를 통해 눈에 보이는 결과물을 만들 수 있기 때문에 파이썬에 대한 흥미를 느끼게 된다. 지도 시각화를 하면서 지리 정보를 시각적으로 표현할 수 있어서 교육 분야에서도 다양한 용도로 활용된다. 사회 계열 교사뿐만 아니라 문화 수업에서 국토나 지리를 가르치는 외국어 계열 교사도 지도 시각화를 활용하면 수업을 더욱 흥미롭게 만들 수 있다.

 

파이썬으로 지도 시각화를 하기 위해서는 실행 가능한 환경과 지도 위에 표시할 정보 데이터가 필요하지만, 초보자인만큼 이번에는 특정한 정보 데이터 없이도 지도에서 도시를 쉽게 표시하는 방법을 소개하겠다. 따라서 코드를 실행할 수 있는 환경만 있으면 누구나 손쉽게 따라 할 수 있다. 

 

그럼 먼저, 별도의 프로그램 없이 파이썬을 실행할 수 있는 Google Colab에 대해 알아보자.

Google Colab(구글 코랩)
별도의 설치 없이 구글 계정만 있으면 언제 어디서나 인터넷만 연결되어 있으면 누구나 무료로 사용할 수 있는 온라인 Jupyter 노트북이다. 코랩을 이용하면 파이썬을 비롯한 다양한 언어로 코드를 작성하고 실행할 수 있을 뿐만 아니라 파이썬과 필요한 패기지들이 미리 설치되어 있고 구글 드라이브와도 연동되어 있어 파일을 편하게 저장하고 불러올 수 있다. 코드 및 실행 결과를 셀 단위로 실행할 수 있어 초보자들에게는 더할나위 없이 편리하게 체험해 볼 수가 있는 좋은 도구이다. 

 

1. Google Colab 실행 방법

1) 구글 검색 or 구글 드라이브에서 새로 만들기

 

2) Google colab(구글 코랩) 시작

① 파일에서 새 노트 클릭

파일 > 새 노트
파일 > 새 노트

 

② 파일명 및 코드 입력

여기까지 잘 따라왔나요? 짝짝짝!

그렇다면 Google ColabPython을 어떻게 사용하는 걸까?

먼저 파이썬 folium 라이브러리를 설치 후 코드를 입력하면 된다.

 

2. Google Colab에 <folium> 설치

1) folium이란?
folium은 파이썬에서 사용할 수 있는 지도 시각화 라이브러리이다. 웹 기반의 지도 라이브러리인 Leaflet.js를 이용하여 지도를 만들고, 파이썬으로 지도 데이터를 다루는데 사용된다. folium을 이용하면 다양한 지도 형태를 만들고, 마커, 원, 폴리곤 등 다양한 시각화 요소를 추가할 수 있다.
 
2) folium 설치하기
folium을 사용하기 위해서는 먼저 설치가 필요하다. 아래와 같이 파이썬 패키지 관리자(pip)를 이용하여 folium을 설치할 수 있다.

 

첫번째 셀에 "pip install folium"을 입력하여 folium 라이브러리를 설치해 보자.

설치 명령어
설치 명령어

pip는  파이썬으로 작성된 패키지 소프트웨어를 설치 관리하는 패키지 관리 시스템이다.

 

왼쪽 실행 버튼을 클릭하면 실행 결과가 자동으로 나온다. 단축키 'Command/Ctrl+Enter'를 사용해도 된다.

실행 버튼 클릭
실행 버튼 클릭
샐행 결과 값
샐행 결과 값

 

3. folium의 지도 시각화 코드 이해하기 

folium을 이용하여 지도를 만들기 위해서는 먼저 folium 맵 객체를 생성해야 한다

 

1) folium 맵 객체 생성 기본 코드

folium_map_example
folium_map_example

위 코드를 실행하면 서울의 위도와 경도를 기준으로 한 지도가 출력됩니다. zoom_start는 지도의 초기 확대/축소 수준을 설정한다. 이 예제에서는 zoom_start=12로 설정하였는데 최대값은 18이다.

 

2) folium 마커 추가 코드

folium을 이용하여 지도를 만들 때 가장 많이 사용되는 기능 중 하나는 마커(Marker)이다. folium을 이용하여 마커를 추가하려면 folium.Marker() 함수를 이용하여 마커 객체를 생성한 후, folium.Map() 함수에 add_to() 메소드를 이용하여 해당 마커 객체를 추가한다. 아래는 서울의 시청 위치에 마커를 추가하는 예시이다.

 

4.  Google Colab에서 folium으로 지도 시각화 코드 작성

1) folium 맵 객체 생성 코드 입력

  "+" 코드를 클릭해서 셀을 추가하여 folium 맵 객체 생성 코드를 입력한다.

셀 추가 후 folium Map 코드 입력 후 실행
셀 추가 후 folium Map 코드 입력 후 실행

folium.Map(location(위도, 경도), zoom_start 지도확대 정도값)
folium.Marker( )를 통해 지도에 마커를 표시할 수 있다.
popup="" 마우스 클릭시 표기되는 문구
tooptip="" 마우스 오버시 표기되는 문구
icon = folium.Icon(color="색상, icon="아이콘 모양")
add_to( )=작성한 마커를 지도에 추가
<color>
‘red’, ‘blue’, ‘green’, ‘purple’, ‘orange’, ‘darkred’, ’lightred’, ‘beige’, ‘darkblue’, ‘darkgreen’, ‘cadetblue’, ‘darkpurple’, ‘white’, ‘pink’, ‘lightblue’, ‘lightgreen’, ‘gray’, ‘black’, ‘lightgray’
<icon>
info-sign, star, cloud

 

2) folium 마커 추가 코드 입력

일본의 수도 도쿄를 빨간 별모양의 위치 표시로 출력 코드를 입력해 보자.

① 구글에서 일본 도쿄의 위도와 경도 검색

일본 도쿄 위도와 경도

② 일본 도쿄의 위도와 경도 코드 입력

import folium
m=folium.Map(location=[37.664973, 138.804694],zoom_start=6)
folium.Marker([35.711392, 139.745046],
              popup='도쿄',
              tooltip="일본 수도",
              icon=folium.Icon(color='red', icon='star')).add_to(m)
m
 

③ 실행 버튼 클릭

실행하면 다음과 같이 일본 도쿄가 빨간색 별 표시로 나온 지도가 자동으로 출력된다.

일본 수도 도쿄
일본 수도 도쿄

 

3) 학생들에게 표기하고 싶은 지역의 위치를 구글에서 검색하여 실행시켜보도록 하자!

import folium
m=folium.Map(location=[37.664973, 138.804694],zoom_start=6)
folium.Marker([위도, 경도],
              tooltip="지역명",
              icon=folium.Icon(color='원하는 색깔 영어로 표시', icon='star')).add_to(m)
m

 

4) 여기서 조금만 더 힘 내서 써클과 유튜브 동영상도 넣어보자!

folium.CircleMarker([35.711392, 139.745046],radius=10,
           popup='<iframe width="560" height="315" src="https://www.youtube.com/embed/qDrJQzR6qxw" title="YouTube             video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope;                 picture-in-picture" allowfullscreen></iframe>',                    
           tooltip="도쿄도", color= 'red', fill=True, fill_color='red').add_to(m)
m
folium.CircleMarker(위도, 경도)
radius=숫자(반경의 범위)
popup='유튜브 삽입 코드',
tooltip="도쿄도",

color=""선의 색깔
fill_color="" 채워질 원의 색깔

관련글 더보기

댓글 영역