Saya terus melihat pengembang web non-GIS mengalami masalah ini, dan saya tidak yakin apa solusinya.
- Ada beberapa dataset dari ribuan item.
- Kami ingin menunjukkan peta kepada pengguna, dengan subset yang terlihat ditampilkan sebagai elemen interaktif yang dapat diklik.
Metode apa yang ada untuk melakukan ini?
Saya bisa memikirkan ini, tetapi mereka tidak terlalu memuaskan, jadi saya bertanya-tanya apa lagi yang ada:
Simpan semua data dalam file GeoJSON, transfer ke browser, dan biarkan Leaflet menampilkannya. Masalah: tidak benar-benar berfungsi dengan kumpulan data besar. TopoJSON menaikkan batas sedikit. Itu juga menyebabkan penundaan besar pada pemuatan halaman.
Gunakan Mapbox, simpan semua data dalam lapisan interaktif di Mapbox, dan gunakan Mapbox.js untuk menampilkannya. Bekerja dengan baik, tetapi membutuhkan biaya, dan Anda tidak dapat meng-host-nya sendiri.
Gunakan GeoServer untuk mengakses database PostGIS, gunakan plugin leaflet WFS-geojson untuk mengakses data dari sana. Ini mungkin bekerja, tetapi plugin Leaflet WFS-geojson tampaknya tidak dipertahankan lagi.
Gunakan CartoDB, simpan semua data dalam tabel CartoDB, dan gunakan CartoDB.js untuk menampilkannya. Bekerja dengan baik, tetapi bisa menjadi sangat mahal. Anda dapat meng-host-nya sendiri, tetapi menginstal CartoDB tidak mudah.
Semua ini membuat saya berpikir pasti ada cara yang lebih baik dan gratis yang saya lewatkan. Apa itu?
EDIT
Mungkin saya terlalu mudah menghapus plugin WFS-geojson. Ada garpu yang masih melihat beberapa aktivitas (4 bulan lalu): https://github.com/johanlahti/azgs-leaflet