Django/개인 프로젝트1(안전한 보행길 지도)

[Django Map] folium plugins 패키지 옵션 사용하기

민돌v 2021. 8. 13. 12:44
728x90

Folium plugins 사용하기

1. folium 을 install 해주었다면

folium 안에있는 plugins을 import 해줍니다.

from folium import plugins

 


Locate control (사용자 현재 위치로 반환)

버튼을 클릭하면 현재위치로 지도를 매빕하은 컨트롤 버튼을 추가합니다.

https://github.com/python-visualization/folium/blob/master/examples/Plugins.ipynb

 

GitHub - python-visualization/folium: Python Data. Leaflet.js Maps.

Python Data. Leaflet.js Maps. . Contribute to python-visualization/folium development by creating an account on GitHub.

github.com

 

[소스 코드]

from django.shortcuts import render
from folium import plugins
import folium
import geocoder     #import geojson

g = geocoder.ip('me')   #현재 내위치
# Create your views here.
def home(request) :
    map = folium.Map(location=g.latlng,zoom_start=15, width='100%', height='100%',)
    plugins.LocateControl().add_to(map)

    maps=map._repr_html_()  #지도를 템플릿에 삽입하기위해 iframe이 있는 문자열로 반환 (folium)

    return render(request,'../templates/home.html',{'map' : maps})


Folium geocoder 

geocoder 옵션도 있길래 사용해 보았는데

검색 옵션과 함께 그 장소의 마커와, 정보를 표시해준다.

근데 이게 자세하게 검색은 안되고, 검색모듈 위치나 크기 같은 커스터마이징도 어떻게 하는건지 알 수 없어서 일단 

뭔지 파악만 해보았다.

from django.shortcuts import render
from folium import plugins
import folium
import geocoder     #import geojson

g = geocoder.ip('me')   #현재 내위치
# Create your views here.
def home(request) :
    map = folium.Map(location=g.latlng,zoom_start=15, width='100%', height='100%',)
    plugins.LocateControl().add_to(map)
    plugins.Geocoder().add_to(map)

    maps=map._repr_html_()  #지도를 템플릿에 삽입하기위해 iframe이 있는 문자열로 반환 (folium)

    return render(request,'../templates/home.html',{'map' : maps})

반응형