Я продолжаю видеть, что веб-разработчики, не являющиеся ГИС, сталкиваются с этой проблемой, и я не уверен, каково решение.
- Существует несколько наборов данных тысяч предметов.
- Мы хотим показать карту пользователю, с видимым подмножеством его, показанным как интерактивные, интерактивные элементы.
Какие есть способы для этого?
Я могу думать об этом, но они не очень удовлетворительны, поэтому мне интересно, что еще есть:
Сохраните все данные в файле GeoJSON, передайте их в браузер и дайте Leaflet отобразить их. Проблема: на самом деле не работает с большими наборами данных. TopoJSON немного повышает лимит. Это также вызывает большую задержку при загрузке страницы.
Используйте Mapbox, сохраните все данные в интерактивном слое на Mapbox и используйте Mapbox.js для его отображения. Прекрасно работает, но стоит денег, и вы не можете провести его самостоятельно.
Используйте GeoServer для доступа к базе данных PostGIS, используйте плагин WFS-geojson для доступа к данным оттуда. Возможно, это работает, но плагин WFS-geojson Leaflet , похоже, больше не поддерживается.
Используйте CartoDB, сохраните все данные в таблице CartoDB и используйте CartoDB.js для их отображения. Прекрасно работает, но может стать очень дорогим. Можно провести его самостоятельно, но установка CartoDB нетривиальна.
Все это заставляет меня думать, что должен быть какой-то гораздо лучший, свободный способ, который я скучаю. Что это?
РЕДАКТИРОВАТЬ
Может быть, я слишком легко списал плагин WFS-geojson. Есть форк, который все еще видит некоторую активность (4 месяца назад): https://github.com/johanlahti/azgs-leaflet