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

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

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

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

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

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

Ответы [ 2 ]

1 голос
/ 07 августа 2020

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

1 голос
/ 07 августа 2020

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

...