Как создать статический скелет карты, используя фолиум с более слоями (маркерами), меняющимися каждый час, который размещается на веб-сайте с использованием фляги?

Извините, если вопрос сбивает с толку или не имеет смысла, это мой первый проект, и я постараюсь объяснить его в меру своих возможностей.

Сначала я думал, что буду размещать только одну карту, созданную с помощью folium, и унаследовал шаблон карты на веб-сайте, созданном с помощью flask, поэтому я не делал жесткого кодирования в основном файле app.py, тем не менее, это казалось действительно простым. Итак, теперь, используя алгоритмы машинного обучения, я хочу отображать на карте разные вещи, которые делают некоторые прогнозы на каждый час дня.

ПРОБЛЕМА: создание новой карты каждый час в течение дня займет больше времени, чем ожидалось (плюс хранение новой карты столько раз будет дорого с точки зрения хранения).

МОЕ РЕШЕНИЕ: Имейте карту скелета, потому что область, в которой я буду делать прогнозы, локализована, поэтому сделайте эту область базовой картой и меняйте верхние слои, на которых будут отображаться прогнозы (в основном, тепловая карта) каждый час.

Это правильный подход? Пожалуйста, порекомендуйте правильный путь для реализации этого. Я готов пробовать что-то новое, пока это работает. Был бы очень признателен за любую помощь по этому поводу. заранее спасибо


person user_id22    schedule 05.08.2020    source источник


Ответы (2)


Folium не поддерживает WebSockets, если что-то добавляет новый javascript для динамической выборки данных, но лучшим способом было бы извлекать данные вместо рендеринга html каждый раз, это также помогло бы решить проблему со скоростью. Кроме того, обратите внимание на буклеты, которые тоже могут помочь.

person shrekh    schedule 07.08.2020
comment
Большое спасибо - person user_id22; 07.08.2020

Если вы хотите создать карту быстрее, вы можете использовать непосредственно библиотеку Javascript Leaflet для создания карты (это библиотека, используемая для визуализации карты с помощью Folium). Вам необходимо отправить данные ваших прогнозов из вашего бэкэнда в Flask в ваш интерфейс в Javascript с помощью Leaflet в вашем HTML-шаблоне (Jinja2).

person Pierre-Loic    schedule 07.08.2020