ForHosting KIT · Outils pour développeurs

Regroupement de points par grille

Le regroupement de points par grille transforme une longue liste de coordonnées en un résumé compact de densité, sans modèle itératif.

● BetaGratuit · dans votre navigateur
Utilisez-le depuis WebAPIE-mailTelegramApp bientôt

Choisissez la taille des cellules carrées en degrés décimaux, envoyez les latitudes et longitudes, puis obtenez chaque cellule occupée avec ses limites géographiques, son effectif et les indices d’origine. La grille possède un ancrage mondial : les appels qui emploient la même taille restent comparables et combinables. Le traitement est local, rapide et déterministe ; aucun fournisseur cartographique, accès réseau, hasard ou jeu de données conservé ne modifie le résultat.

Choisissez une maille adaptée à votre question

Une cellule constitue un découpage spatial, et non la preuve que ses membres forment un groupe naturel. cell_size définit sa hauteur et sa largeur en degrés décimaux. Une grande valeur donne peu de cellules et une vue générale ; une petite valeur conserve davantage de variations locales. Les degrés de longitude représentant une distance physique plus faible près des pôles, il s’agit de carrés angulaires, pas de surfaces terrestres égales. Tenez-en compte si vous comparez des latitudes éloignées. Pour une ville, commencez par une fraction raisonnable de degré, puis ajustez-la en examinant les limites. Si vous exigez des surfaces physiques égales à l’échelle mondiale, projetez d’abord les coordonnées dans un système adapté. Cet outil accepte uniquement des coordonnées géographiques ordinaires. Son ancrage reste fixé à la latitude -90 et à la longitude -180 : une taille donnée produit donc toujours les mêmes frontières pour vos rapports, tests, caches et partitions.

Interprétez les effectifs, limites et membres

Chaque cellule fournit une ligne et une colonne indexées à partir de zéro, ses bords sud, ouest, nord et est, un effectif et member_indices. Ces indices désignent les positions dans le tableau points envoyé ; vous pouvez ainsi retrouver les sources sans recopier d’étiquettes dans la réponse. Les cellules suivent l’ordre sud-nord, puis ouest-est, tandis que les membres gardent l’ordre initial. Un point placé sur une frontière intérieure rejoint la cellule située au nord ou à l’est. La latitude 90 et la longitude 180 sont rattachées à la dernière cellule valide. point_count confirme le nombre traité et occupied_cell_count le nombre compact de cellules non vides. Les cellules vides sont omises. Une cellule terminale peut être plus étroite si la taille ne divise pas exactement 180 ou 360. Pour dessiner ou étiqueter, utilisez les limites fournies plutôt que de les recalculer avec une arithmétique flottante non contrôlée.

Créez des traitements de densité reproductibles

L’agrégation par grille sert de première passe aux cartes, capteurs, livraisons, relevés de terrain et contrôles qualité. L’affectation est linéaire, puis seules les cellules occupées sont triées : elle convient lorsqu’un tableau rapide importe plus que la détection de formes irrégulières. Un tableau de bord peut colorer les rectangles selon leur effectif ; une chaîne peut répartir les sources par ligne et colonne ; des tests peuvent comparer les versions ; une analyse peut réserver une méthode coûteuse aux zones denses. L’algorithme ne calcule ni centroïdes, ni distances, ni voisinages, ni seuils, et ne fusionne jamais les cellules adjacentes. Il ne géocode pas les noms, ne corrige pas les coordonnées inversées et ne juge pas les doublons. Les valeurs invalides sont rejetées. Pour combiner des lots, conservez le même cell_size et additionnez les cellules de mêmes ligne et colonne. L’utilisation web est gratuite ; chaque appel API réussi coûte $0.002. Une entrée JSON identique donne toujours la même réponse, sans réseau, hasard, horloge ou état partagé.

Créez une couche de densité cartographique

Transformez les coordonnées d’événements en rectangles occupés et colorez chaque cellule selon son effectif.

Partitionnez des relevés de position

Employez les identifiants stables de ligne et colonne pour répartir les relevés proches de manière reproductible.

Explorez un grand jeu spatial

Repérez vite les zones denses ou clairsemées avant une analyse par distance sur des sous-ensembles choisis.

Quel est le prix d’un appel API ?

Un appel API réussi coûte $0.002. Vous pouvez aussi exécuter gratuitement le même calcul dans votre navigateur.

La taille des cellules est-elle en kilomètres ?

Non. Elle est exprimée en degrés décimaux de latitude et longitude ; la largeur physique varie donc avec la latitude.

Où la grille est-elle ancrée ?

Les lignes commencent à la latitude -90 et les colonnes à la longitude -180. Cet ancrage ne change jamais.

Comment est traité un point sur une frontière ?

Une frontière intérieure place le point au nord ou à l’est. La latitude 90 et la longitude 180 rejoignent la dernière cellule valide.

Les cellules vides sont-elles renvoyées ?

Non. Seules les cellules occupées figurent dans la réponse afin de garder les grilles fines compactes.

Détecte-t-il des groupes irréguliers ou fondés sur la distance ?

Non. Il compte les points dans des cellules angulaires fixes, sans fusion de voisines ni calcul des distances.

Tout sur cette page est disponible par programmation. Cette section s'adresse aux équipes qui veulent l'intégrer à leurs systèmes ; les autres peuvent simplement utiliser l'outil ci-dessus.

POSThttps://api.kit.forhosting.com/geo/point-cluster-grid

Authentification par jeton Bearer : un seul POST met la tâche en file d’attente, et le résultat vous parvient par webhook ou lien signé.

curl -X POST https://api.kit.forhosting.com/geo/point-cluster-grid \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"points":[{"lat":40.7128,"lon":-74.006},{"lat":40.7306,"lon":-73.9352},{"lat":34.0522,"lon":-118.2437}],"cell_size":1}'
{
  "points": [
    {
      "lat": 40.7128,
      "lon": -74.006
    },
    {
      "lat": 40.7306,
      "lon": -73.9352
    },
    {
      "lat": 34.0522,
      "lon": -118.2437
    }
  ],
  "cell_size": 1
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "geo.point_cluster_grid",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

L’API est asynchrone : chaque appel renvoie un task_id immédiatement, puis vous interrogez l’état à raison d’une requête par seconde.

par requête$0.002

Le prix est publié, sans tokens ni crédits. Une tâche qui échoue n’est pas facturée.

max_points100000
HTTPCodeSignification
401unauthorizedClé API absente ou invalide : vérifiez l’en-tête Authorization.
402insufficient_balanceSolde insuffisant : rechargez votre compte pour lancer cette tâche.
404unknown_typeType de tâche inconnu : vérifiez le champ type de votre requête.
429rate_limitedTrop de requêtes : ralentissez la cadence, puis réessayez.

Consulter la documentation complète du KIT →