У меня есть веб-карта, созданная на Python с использованием Folium. Я добавляю различные слои geojson из базовой базы данных. Я хотел бы провести пространственный анализ на основе местоположения пользователя и его положения относительно различных наложений карты. В рамках этого я хочу отобразить на карте маркер, который указывает текущее положение пользователя и который регулярно обновляется по мере его перемещения.
Я знаю, как добавлять маркеры на карту из Python, используя Folium.
Я знаю, как получить постоянно обновляемую широту / долготу пользователя с помощью JS
navigator.geolocation.watchPosition(showPosition)
который затем передает переменную position
функции showPosition
.
В настоящее время я просто показываю это как текст на веб-сайте.
Что мне не удалось сделать, так это добавить маркер на карту Folium из внутри веб-страницы с помощью JS / Leaflet (поскольку Folium - это просто оболочка для Leaflet, Думаю, у меня получится это сделать).
Кажется, что объекту карты Folium присваивается новое имя переменной каждый раз при загрузке веб-страницы, и я не знаю, как «получить» элемент карты и добавить маркер с помощью синтаксиса Leaflet.
L.marker([lat, lon]).addTo(name_of_map_variable_which_keeps_changing)
В качестве альтернативы может быть способ «отправить» постоянно изменяющиеся переменные широты и долготы с веб-страницы обратно в скрипт python, чтобы я мог просто использовать folium для добавления маркера.
Но я не смог понять это или найти нужную помощь в Интернете и был бы признателен за любую помощь.