Ich habe mehrere tausend Marker in einer kmz-Datei gespeichert, die ich in eine Google Maps (v3-API) lade.
Ich habe mich umgesehen, um einen Weg zu finden, die Overlay-Daten zu gruppieren, aber ohne Erfolg.
MarkerClusterer sieht gut aus, scheint aber nur mit einem Marker-Array zu funktionieren?
function initialize() {
geocoder = new google.maps.Geocoder();
var latlng = new google.maps.LatLng(25,-20);
var myOptions = {
zoom: 2,
center: latlng,
mapTypeId: google.maps.MapTypeId.ROADMAP
};
map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);
var ctaLayer = new google.maps.KmlLayer('thedata.kmz');
ctaLayer.setMap(map);
//cluster
var mcOptions = {gridSize: 50, maxZoom: 15};
var mc = new MarkerClusterer(map, ctaLayer, mcOptions);
}
Wie kann ich die Marker im Overlay gruppieren, genau wie es der Markerclusterer tut?
quelle
Das ist möglich. Sie können eine Javascript-KML-Parser-Bibliothek verwenden, mit der Sie auf alle Daten in jedem Marker zugreifen können.
In Maps V2 war der beste hier:
econym.org.uk/gmap/egeoxml.htm
In V3 können Sie eine der folgenden 2 verwenden:
code.google.com/p/geoxml3/
code.google.com/p/geoxml/
Einmal verwendet, können Sie beispielsweise jeden KML-Marker durchlaufen und mithilfe von Javascript Punkte an derselben Stelle gruppieren und mithilfe von JS verschiedene Infofenster für jeden Marker an derselben Stelle anzeigen.
Ich mache das auf meiner Your Mapper-Seite hier. Klicken Sie auf eine schwarz nummerierte Markierung, um sie in Aktion zu sehen:
http://www.yourmapper.com/map/111/crime-reports/crime-in-metro-louisville-ky-since-jan-2003.htm
quelle