ABC부트캠프

[16일차]ABC부트캠프

ideas9064 2025. 7. 27. 10:24

위치정보의 시각화

 

folium라이브러리 

지도를 만들고 시각화할 수 있게 만들어줌

지도 위에 마커, 선, 원, 히트맵과 같은 걸 쉽게 추가할 수 있다.

 

 

기본 지도 생성

folium.Map(location=location, zoom_start=18)

  • folium에서 지도를 생성
  • location=location: 위에서 설정한 좌표를 중심으로 지도를 만들라는 뜻.
  • zoom_start=18: 확대 레벨

 


 

위치정보 표시

folium.Marker(location=location, icon=folium.Icon(icon="bicycle", prefix='fa'))

  • Marker: 지도에 마커(핀) 꽂음
  • location: 마커를 어디에 꽂을지 지정
  • icon=folium.Icon(...): 마커 아이콘을 자전거 모양으로 설정

folium.Icon(icon="bicycle", prefix='fa')

  • 아이콘을 자전거 모양으로 바꿔주는 설정
  • icon="bicycle": 자전거 아이콘 (Font Awesome 기준 이름)
  • prefix='fa': 아이콘 종류로 Font Awesome을 쓰겠다는 뜻

.add_to(m)

  • 위에서 만든 마커를 m 지도에 추가

실습

params에서

  • PI에 요청 보낼 때 필요한 파라미터들
    → 인증키, 페이지번호, 몇 개 가져올지 설정

 

requests.get(): API에 요청을 보내고

json.loads(): 받은 결과를 딕셔너리 형태로 파싱

 

items = resObj['response']['body']['items']

 

JSON에서 자전거 대여소들 목록만 추출

 

for item in items:
    location = (float(item['laCrdnt']), float(item['loCrdnt']))
    folium.Marker(location=location, icon=folium.Icon(icon="cloud")).add_to(m)

 

  • 각 item마다
    • laCrdnt: 위도
    • loCrdnt: 경도
      → float()으로 숫자로 바꿔서 folium에 넘김
  • icon="cloud": 마커를 구름 모양으로 표시!

 


위치정보 표시(라인)

PolyLine(...)

  • **선(Polyline)**을 folium 지도에 추가하는 함수
  • 파라미터 설명
    trail_coordinates 연결할 좌표들 (여러 개 가능)
    tooltip="..." 선 위에 마우스 올리면 나오는 설명
    color="red" 선의 색상
    opacity=5 선의 투명도

실습-공공데이터포털의 타슈 대여정보를 활용하여 지도에 라인 표시하기

 


folium with Plugings