0

Ich bin kein erfahrener Programmierer, also entschuldigen Sie bitte, wenn ich einige Begriffe falsch verwende.Größenanpassung von Markierungen bei Verkehrsdaten in Google Maps API

Momentan erstellen Sie eine Karte für Bahnübergänge, die Anzahl der Züge pro Tag und den täglichen Verkehr, der durch diese Kreuzungen geht. Ich habe sie alle in 5 separaten Fusion-Tischen (100+ Züge, 80-99, 60-79, 40-59, unter 40 Züge) angelegt und habe für jede Kategorie eine andere Farbmarkierung.

Ich versuche einen Weg zu finden, die Marker in der Größe zu ändern, wenn die Verkehrsdaten durch die Übergänge gehen, und habe nicht herausgefunden, wie das geht. Ich habe die Größen angegeben, die ich für die Verkehrsdaten der Kreise benötige, aber ich weiß nicht, wie ich sie in die Markierungen integrieren soll.

Hier ist die JSfiddle und einige der Codierung, die ich habe. Da ich in Eile war, habe ich alles in den JavaScript-Bereich kopiert, aber es gibt auch einige CSS- und HTML-Sachen in der Codierung. Derzeit zeigt die Codierung die Karte, die Legende und alle Kreuzungen korrekt an.

Danke!

https://jsfiddle.net/jdg9zz0y/

var styledMapType = new google.maps.StyledMapType(style, { 
    map: map, 
    name: 'Styled Map' 
    }); 
    map.mapTypes.set('map-style', styledMapType); 
    map.setMapTypeId('map-style'); 

<!-- 100+ layer --> 
var layer_CandidateCrossingO100 = new google.maps.FusionTablesLayer ({  
    query: { 
    select: "col1", 
    from: "1DMatlMkpGhAkaAhPx_6sjXW_CGzN71P92tzbvoNk", 
    }, 
    map: map, 
    styleId: 2, 
    templateId: 2 
    }); 

    <!-- 80 to 99 layer --> 
var layer_CandidateCrossing80to99 = new google.maps.FusionTablesLayer({ 
    query: { 
    select: "col1", 
    from: "11gfA9J0jlRQyvhXiRxvZD90ApIonAveGfOGW5bGG", 
    }, 
    map: map, 
    styleId: 2, 
    templateId: 2 
    }); 

    <!-- 60 to 79 layer --> 
var layer_CandidateCrossing60to79 = new google.maps.FusionTablesLayer({ 
    query: { 
    select: "col1", 
    from: "1fth-vFws0sfpfd0SDn1PHow9WMlyGuImClxpYpiG", 
    }, 
    map: map, 
    styleId: 2, 
    templateId: 2 
    }); 

    <!-- 40 to 59 layer --> 
var layer_CandidateCrossing40to59 = new google.maps.FusionTablesLayer({ 
    query: { 
    select: "col1", 
    from: "168C1S6zxRyWqnDxriSnaF36EnMV17S1wPjrXf9hz", 
    }, 
    map: map, 
    styleId: 2, 
    templateId: 2 
    }); 

<!-- Under 40 layer --> 
var layer_CandidateCrossingU40 = new google.maps.FusionTablesLayer({  
    query: { 
    select: "col1", 
    from: "1mm9ZoqTVQH1LPDhUPM8PQ3ydHooRfxBtvvv8UOgs", 
    }, 
    map: map, 
    styleId: 2, 
    templateId: 2 
    }); 
+1

Das Geige scheint nicht wählen die Karte richtig angezeigt wird. Ich würde mir die Zeit nehmen, um das Beispiel richtig zu machen, um eine gute Antwort zu bekommen. – carebdayrvis

+0

Seltsam ... die Geige funktioniert nicht, aber wenn ich kopiere/in den Notizblock und speichern Sie es als HTML, läuft es gut. – vb5215

+0

Es hat wahrscheinlich damit zu tun, dass alles im JavaScript-Feld ist, und nicht nur HTML im HTML-Feld und nur JS im JS-Feld. Ich weiß, dass jsfiddle externe Ressourcen (wie die Google Maps js API) über die Schaltfläche Externe Ressourcen auf der linken Seite laden muss, so dass dies auch ein Problem sein könnte. – carebdayrvis

Antwort

0

Während Sie die Markierung zu erstellen, können Sie das Symbol angeben. Aber es ist möglich, durch die Bienen als auch das Symbol Objekt erstellen, so können Sie die Größe

Unter dem Beispiel

var image = { 
    url: place.icon, 
    size: new google.maps.Size(71, 71), 
    origin: new google.maps.Point(0, 0), 
    anchor: new google.maps.Point(17, 34), 
    scaledSize: new google.maps.Size(25, 25) 
}; 

var marker = new google.maps.Marker({ 
    map: map, 
    icon: image, 
    title: place.name, 
    position: place.geometry.location 
}); 
+0

Danke, das löst die Hälfte meines Problems. Wie verwende ich die skalierten Größen in den Verkehrsdaten? Ich nehme an, dass es etwas mit den Fusionstabellenkarten zu tun hat. – vb5215

+0

Sollte ich jetzt über https://developers.google.com/maps/documentation/javascript/examples/layer-fusiontables-simple über Fusion-Tabellen etwas wie diese haben, aber würde die Marker nach Traffic-Daten skalieren wollen. – vb5215

Verwandte Themen