0

私は経験豊かなプログラマーではないので、間違った言葉を使うと私を許してしまいます。Google Maps APIでトラフィックデータが与えられたマーカーのサイズを変更する

現在、列車の交差点、1日あたりの列車数、およびこれらの交差点を通過する1日の交通量に関する地図を作成しています。私はそれらを5つの別々の融合テーブル(100 +列車、80-99,60-79,40-59、40列車)に配置し、各カテゴリごとに異なる色のマーカーを持っています。

私は交差点を通過するトラフィックデータを考慮してマーカーのサイズを変更する方法を見つけようとしており、その方法を理解していません。私はトラフィックデータを与えられたサークルに必要なサイズをレイアウトしましたが、マーカー自体に組み込む方法はわかりません。

ここにjsfiddleと私が持っているコーディングがあります。私は急いでいたので、すべてをjavascriptセクションにコピーしましたが、コーディングにもCSSとHTMLのものがあります。現在、コーディングはマップ、凡例、およびすべての交差点を適切に示しています。

ありがとうございます!

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

を選択することができますので、同様のアイコンオブジェクトを作成するためにミツバチによって可能です。私は良い答えを得るために右の例を働かせる時間を取るだろう。 – carebdayrvis

+0

奇妙な...フィドルはうまくいきませんが、メモ帳にコピーして貼り付けて、HTMLとして保存するとうまくいきます。 – vb5215

+0

おそらく、HTMLフィールドのHTMLだけでなく、JSフィールドのJSだけでなく、JavaScriptフィールドにあるすべてのものと関係しているはずです。 jsfiddleは外部リソース(Google Maps js apiのような)を左のExternal Resourcesボタンからロードしなければならないことも知っているので、それも問題になる可能性があります。 – carebdayrvis

答えて

0

あなたは、マーカーを作成している間、あなたはアイコンを指定することができます。しかし、それはあなたがフィドルを正しくマップを表示していないようなサイズの例以下は

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

ありがとう、それは私の半分の問題を解決します。スケールされたサイズをトラフィックデータに適用するにはどうすればよいですか?私はそれがフュージョンテーブルマップと関係があると思います。 – vb5215

+0

注目すべきは、現在、https://developers.google.com/maps/documentation/javascript/examples/layer-fusiontables-simpleのフュージョンテーブルを使用していますが、トラフィックデータに応じてマーカーの縮尺を変更したいと考えています。 – vb5215

関連する問題