Ich erstelle ein Mashup in Django und Google Maps und ich frage mich, ob es eine Möglichkeit gibt, Marker auf der Serverseite mit Django/Python zu gruppieren.serverseitige Markierung Clustering in Django
0
A
Antwort
0
Ich kam mit dem unten stehenden Code, um herauszufinden, ob eine Markierung nahe genug an einer anderen für Clustering ist - schließen, wenn zwei Cluster-Symbole beginnen sich zu überlappen. Funktioniert für die gesamte Weltkarte für alle Zoomstufen.
Das Problem ist, dass die Kartenprojektion nicht linear ist und Sie nicht einfach eine Toleranz festlegen können - beide hängen von der Breite ab. Für lokale Karten ist es jedoch kein Problem.
Wenn Sie alles auf der Server-Seite tun möchten, müssen Sie Clustered-Marker für jede Zoomstufe entweder per AJAX-Aufruf berechnen oder sie alle auf einmal ausdrucken.
function isCloseTo($other,$z){//$z is zoomlevel
$delta_lat = abs($this->lattitude - $other->lattitude);
$delta_lng = abs($this->longitude - $other->longitude);
$l = abs($this->lattitude);
$l2 = $l*$l;
$l3 = $l2*$l;
$l4 = $l3*$l;
$factor = 1
+0.0000312*$l
+0.0003604*$l2
-0.000009858*$l3
+0.0000001506*$l4;
$tol_lat = (45.42*exp(-0.6894339*$z)/3)/$factor;
$tol_lng = 21.845*exp(-0.67686*$z)/2;
if ($delta_lat < $tol_lat and $delta_lng < $tol_lng){
return true;
}
else{
return false;
}
}
1
Ich habe Server-Seite Clustering in Django auf meiner Immobilien/Vermietung Website implementiert; Ich erkläre es here.
Verwandte Themen
- 1. Capture-access_token von Facebook serverseitige Authentifizierung in Django
- 2. Spectral Clustering vs hierarchische Clustering
- 3. Django Admin - Broschüre: Programmatische eine Markierung an bestehende Karte hinzufügen
- 4. Serverseitige Zwischenspeicherung in Openrasta
- 5. Korrelation Clustering in R
- 6. Clustering Keys in Cassandra
- 7. Clustering Fotos in R?
- 8. Variable Clustering in Python
- 9. Wie kann ich serverseitige Cursor mit Django und Psycopg2 verwenden?
- 10. serverseitige Browser
- 11. Serverseitiges Clustering?
- 12. spektrale Clustering
- 13. Markov Clustering
- 14. serverseitige Validierung
- 15. Serverseitige Ereignisverbindungsproblem
- 16. Serverseitige Analytik
- 17. Serverseitige Virensuche
- 18. Benutzerdefinierte Markierung mit eckigen Google Maps
- 19. Serverseitige Datenvalidierung in Express + node.js
- 20. Serverseitige DataTable Sortierung in RichFaces
- 21. Serverseitige Mikrofonerfassung in ASP.NET/ C#
- 22. Clustering Elemente in einer Buchseite
- 23. Gruppierung/Clustering-Nummern in Python
- 24. Markov Clustering-Algorithmus in Java
- 25. Clustering und Distanzberechnung in Julia
- 26. K bedeutet Clustering in Matlab
- 27. Tomcat-Clustering in Microsoft Azure
- 28. Plazierte Markierung auf GoogleMapSDK
- 29. Mapbox Benutzerdefinierte Markierung
- 30. MKMapView Clustering wenn zu viele Map Pins in der Nähe
Wenn sich die Punkte, die Sie verwenden, in einer Datenbank befinden, können Sie Ihre Datenbank dazu verwenden. – Petrogad