Création d'une carte avec des dizaines de milliers de points

Extraire des données OSM, créer sa carte, uMap, utiliser sur un GPS ou un smartphone...
MartinV

Création d'une carte avec des dizaines de milliers de points

Message par MartinV » ven. sept. 13, 2013 1:43 pm

Bonjour

je cherche à faire une carte avec des dizaines de milliers de points (correspondant à des débits téhroiques à chaque adrese)

J'ai testé à la fois avec Leaflet et Openlayers.

Dans les deux cas, je parviens à afficher sans problèmes quelques dizaines, voire quelques centaines de points, mais lorsque je génère plusieurs dizaines de milliers, j'obtiens des fichiers de plusieurs megs, voire plusieurs dizaines de megs, et là, impossible d'afficher correctement la carte.
J'imagine que la solution est de faire appel à une base de données externes, mais je ne sais pas comment faire

quelqu'un a-t-il une idée ?

Merci

sly
Messages : 489
Inscription : sam. févr. 07, 2009 6:33 pm
Localisation : Chambéry - savoie

Re: Création d'une carte avec des dizaines de milliers de points

Message par sly » sam. sept. 14, 2013 8:40 pm

L'idée c'est de ne charger, à l'écran, que les points compris dans la zone visible et non tout !
C'est à dire de charger, dynamiquement au fur et à mesure du déplacement et des opérations de zoom/dé-zoom les points "utiles"

(avec un garde fou pour ne pas dépasser une limite de ~100)

Il te faudra donc charger en provenance d'une url capable de gérer la bbox et de ne renvoyer que ce qu'il faut. Une base de donnée plutôt qu'un fichier statique devenant alors très confortable et quasi indispensable

Note que cette question à plus de chance de trouver une réponse de meilleure qualité sur les listes ou forum de openlayers ou leaflet

BrunoC
Messages : 374
Inscription : sam. juin 23, 2012 11:07 am
Localisation : Nantes
Contact :

Re: Création d'une carte avec des dizaines de milliers de points

Message par BrunoC » mar. sept. 17, 2013 12:51 pm

Je pense qu'il faut se tourner vers une solution raster, c'est à dire générer des tuiles image avec les points.
Tilemill permet de faire çà assez vite à partir de diverse source (dont un fichier csv), et de gérer des bulles.
Il produira un fichier mbtile (un fichier sqlite avec les tuiles) que l'on peut "servir" avec un bout de php ou de python.

Pas la peine de passer par mapbox pour l'hébergement, mais leur solution semble très au point.

Quelques liens :
http://www.mapbox.com/tilemill/docs/cra ... oint-data/
http://www.mapbox.com/tilemill/docs/cra ... /tooltips/
http://www.mapbox.com/tilemill/docs/gui ... heat-maps/
http://www.mapbox.com/tilemill/docs/gui ... ap-design/

Ab_fabe

Re: Création d'une carte avec des dizaines de milliers de points

Message par Ab_fabe » mar. sept. 17, 2013 5:56 pm

Marc Sibert, un contributeur régulier a commis cette carte des radars automatiques :
http://freeroute.fr/?page_id=36

Si j'ai bien compris, il utilise Spatialite, qui est une extension geospatiale de SQlite, en conjonction avec OpenLayers.
Sa base compte environ 6000 points.

Je pense avoir vu des outils qui extraient des données d'une base spatialite pour les servir vers Leaflet au format GeoJSON.
Ce domaine est obscur, mais tu peux peut être investiguer dans cette direction.

Bonne journée

BrunoC
Messages : 374
Inscription : sam. juin 23, 2012 11:07 am
Localisation : Nantes
Contact :

Re: Création d'une carte avec des dizaines de milliers de points

Message par BrunoC » mer. sept. 18, 2013 2:13 pm

S'il souhaite pourvoir visualiser l'ensemble de ses points individuellement d'un coup, c'est mort sans passer par du raster. C'est trop lourd à télécharger, et à afficher pour le navigateur.

Sinon il y a la solution des cluster openlayer ou leaflet, qui regroupe plusieurs point en un groupe. Cela résout le pb de l'affichage car c'est plus léger à gérer pour le navigateur, pas celui du téléchargement.
http://leaflet.github.io/Leaflet.marker ... d.388.html

Pas sûr que cela n'ira pas avec son type de visualisation

Répondre

Qui est en ligne ?

Utilisateurs parcourant ce forum : Aucun utilisateur inscrit et 4 invités