[Python] κ΅¬κΈ μ§μ€μ½λ©(geocoding)μ νμ©νμ¬ μ§λμ μμΈλνκ΅ μμΉ νμ
[Python] κ΅¬κΈ μ§μ€μ½λ© API ν€ μ½κ² λ°κΈλ°λ λ°©λ²
κ΅¬κΈ μ§λ μμ μ νν μμΉμ λ§μ»€λ₯Ό μ°μ΄ νμνκΈ° μν΄μλ GPS μ’νκ° νμνλ°μ..! μΌλ°μ μΈ μ£Όμ(μ°λ¦¬κ° μ½κ² μΈμν μ μλ μ£Όμ μ) μ’ λ‘ꡬ) μ GPS μ’νλ₯Ό μλ‘ λ³ννλ κΈ°λ₯μ μ½κ² ꡬ
xod22.tistory.com
μ½λμμ± μ΄μ μ κ΅¬κΈ μ§μ€μ½λ© API λ°κΈμ μ΄μ κΈμ μ°Έκ³ ν΄μ£ΌμΈμ!
- λ°μ΄ν°
1. ν¨ν€μ§ μν¬νΈ λ° API μ λ ₯
import googlemaps
import pandas as pd
my_key="μ΄μ κΈ μ°Έκ³ ν΄μ λ°κΈλ°μ APIν€ μ
λ ₯"
maps=googlemaps.Client(key=my_key)
lat=[] #μλ
lng=[] #κ²½λ
2. μμΈ μμ¬ λνκ΅ μμΉμ 보 μκ°ν
-> FoliumλΌμ΄λΈλ¬λ¦¬λ₯Ό μ΄μ©
*Folium λΌμ΄λΈλ¬λ¦¬
: μ§λλ₯Ό μκ°νν λ μ μ©ν λꡬ
μΈκ³μ§λλ₯Ό κΈ°λ³Έμ μΌλ‘ μ§μνκ³ λ€μν μ€νμΌμ μ§λ μ΄λ―Έμ§λ₯Ό μ 곡ν¨.
μ§λλ₯Ό λ³΄λ €λ©΄ μ§λ κ°μ²΄λ₯Ό save() ν¨μλ‘ HTML νμΌλ‘ μ μ₯ν ν, μΉλΈλΌμ°μ λ‘ μ μ₯λ HTML νμΌμ μ΄μ΄μ νμΈν΄μΌν¨
- ν¨ν€μ§ μν¬νΈ
import folium
import webbrowser
- λ°μ΄ν° λΆλ¬μ€κΈ°
df=pd.read_excel('μμΈμ§μ λνκ΅ μμΉ.xlsx')
df.columns=['collage', 'μλ', 'κ²½λ']
df.head()
- μμΈμ§λ μμ±
seoul_map=folium.Map(location=[33.55, 126.98], zoom_start=12, tiles='Stamen Terrain')
- λνκ΅ μμΉμ 보 μκ°ν(CircleMarker)
for name, lat, lng in zip(df.collage, df.μλ, df.κ²½λ):
folium.CircleMarker([lat, lng], radius=10, color='brown', fill=True, fill_color='coral', fill_opacity=0.3, popup=name).add_to(seoul_map)
- μ§λλ₯Ό HTML νμΌλ‘ μ μ₯ ν λΈλΌμ°μ λ‘ νμΈ
seoul_collage='seoul_colleges2.html'
seoul_map.save(seoul_collage)
webbrowser.open(seoul_collage)
ν΄λΉ λ§μ»€μ λ§μ°μ€λ₯Ό μ€λ²νλ©΄ λνκ΅λͺ μ΄ νμλλ€!