GIS

Folium (3): GitHub에서 csv 파일 읽어와 매핑하기

유병혁 2022. 3. 14. 03:16

안녕하세요? 이번 글은 GitHub에서 csv 파일을 읽어와 Folium로 매핑하는 과정을 정리해 보겠습니다. 이전 글은 아래 링크를 참고하시기 바랍니다.

 

Folium (2): 마커 설정 및 사용자 위치 확인하기

안녕하세요? 이번 글은 Folium(폴리움)에서 마커를 설정하고 사용자 위치를 확인하는 과정을 정리해 보겠습니다. 이전 글은 아래 링크를 참고하시기 바랍니다. Folium (1): GitHub Pages로 Folium 웹 매핑

blog.daum.net

실습용 csv 파일은 아래와 같습니다. 해당 파일을 data 폴더에 위치시킨 후, GitHub에 data 폴더를 업로드 합니다. 업로드한 결과는 아래와 같습니다. 'Raw' 버튼을 클릭하면 csv 파일의 url을 확인하실 수 있습니다.

bangtantour_list.csv
0.00MB

자, 그럼 해당 파일을 읽어와 볼까요?! 일단 folium과 pandas 모듈을 불러옵니다.

import folium
import pandas as pd

csv 파일의 url을 통해 데이터프레임을 열어봅니다.

url = (
    "https://raw.githubusercontent.com/osgeokr/bangtantour/main/data"
)
df = pd.read_csv(f'{url}/bangtantour_list.csv', encoding='utf-8')
df.head()

자, 이제 Folium으로 지도를 만들어볼까요?!

# 타일 유형
m = folium.Map(location=[37.53319398622274, 126.96437069887519], zoom_start=12, tiles="CartoDB positron")
m

csv 파일을 이용해 마커를 추가해 봅니다. 간단하죠?!

# 마커
for index, row in df.iterrows():
    folium.Marker(
        location=[row['LAT'], row['LON']],
        popup=row['NAME'],
        icon=folium.Icon(color="purple", icon="info-sign"),
    ).add_to(m)
m

사용자 위치 확인 아이콘을 추가한 후, 현재까지 작업을 html 파일로 저장합니다.

# 사용자 위치 확인
from folium import plugins
plugins.LocateControl().add_to(m)
import os
os.chdir('D:\\GEODATA')
m.save("index.html") # 파일로 저장

결과는 아래와 같습니다. 여기까지 GitHub에서 csv 파일을 읽어와 Folium로 매핑하는 과정을 정리해 봤습니다. 다음 글은 마커의 popup을 정리해 보겠습니다.

 

https://osgeokr.github.io/bangtantour/

 

osgeokr.github.io