그런 다음 위도, 경도, 학교명을 하나씩 가져와서 Marker를 활용하여서 지도에 표시해 준다.
for i in range(len(df)):
위도=df['위도'][i]
경도=df['경도'][i]
학교명=df['학교명'][i]
mk=folium.Marker([위도, 경도],
popup=folium.Popup(학교명, max_width=100))
mk.add_to(Map)
Map
마지막으로 MarkerCluster를 표시해서 예쁘게(?) 지도를 만들어 준다.
import folium
from folium.plugins import MarkerCluster
Map=folium.Map(location=[36.714580, 127.720143],
zoom_start=7,
zoom_control=True,
control_scale=True)
mc=MarkerCluster().add_to(Map) #MarkerCluster를 Map에 적용하기
for i in range(len(df)):
위도=df['위도'][i]
경도=df['경도'][i]
학교명=df['학교명'][i]
mk=folium.Marker([위도, 경도],
popup=folium.Popup(학교명, max_width=100))
mk.add_to(mc) #Map이 아니라 mc에 마커를 적용해준다
Map
cf) iterrows()
for i in range(len(df)):
위도=df['위도'][i]
경도=df['경도'][i]
학교명=df['학교명'][i]
mk=folium.Marker([위도, 경도],
popup=folium.Popup(학교명, max_width=100))
mk.add_to(mc)
이 부분에서 위도와 경도, 학교명에 해당하는 데이터를 한 번에 가져오기 위해서 iterrows를 사용한다. iterrows 같은 경우에는 열-값 형태로 변환해 준다.
import folium
from folium.plugins import MarkerCluster
Map=folium.Map(location=[36.714580, 127.720143],
zoom_start=7,
zoom_control=True,
control_scale=True)
mc=MarkerCluster().add_to(Map)
for idx, row in df.iterrows(): #row: i번째 열에 해당하는 데이터를 튜플 형식으로 저장!
mk=folium.Marker(location=[row['위도'], row['경도']], #튜플에 접근 하기위해서 row[''] 활용!
popup=folium.Popup(row['학교명'],max_width=100))
mk.add_to(mc)
Map