0

いくつかのマーカーでクラスタマーカーが正常に機能していますが、領域が溢れすぎてもクラスターは表示されません。私はJavascript APIを使用しています。Google Map Clusterer

this.map = new google.maps.Map(map, mapOptions); 
    this.markers = data.map((location) => { 
    if (location.location === null) return 
    const marker = new google.maps.Marker({ 
     position: { lat: location.location.coordinates[0], lng: location.location.coordinates[1]}, 
     map: this.map 
    }); 
    return marker 
    }); 
    const markerCluster = new MarkerClusterer(this.map, this.markers, { 
    imagePath: 'https://developers.google.com/maps/documentation/javascript/examples/markerclusterer/m' 
    }); 

私は画像を投稿しますが、私はもっと評判が必要です。

enter image description here

私はヒートマップに切り替えるか、これはクラスターライブラリの既知の制限であるべきでしょうか?

EDIT は、それは私が179にマーカーの量を制限するとき、それはそれらすべてをクラスタリングし、私は180に制限したときに、第180がクラスタ外に配置されているようだ180個のマーカーの制限はでありません

+0

問題を示す[mcve]を入力してください。 [私は何千ものマーカーを集めることができます(例)](http://www.geocodezip.com/v3_MW_example_map3_clustered.html) – geocodezip

+0

私は問題を再現するためのプランナーを作成中です。私は角度を使用していることに言及することを忘れていたので、これを置くのはまともな場所になると思います。 –

答えて

2

MarkerClustererライブラリ。 this exampleを見ると、gridSizeに応じて400以上のマーカーがクラスタリングされています。

あなたのgridSizeは小さすぎてはいけません。したがって、マーカーのより大きな領域がクラスタリングされますが、あなたの例ではうまくいくはずのデフォルトのオプションを使用しているようです。

マーカーを作成するときにマップを定義する必要はありません。マーカーのクラスターは地図上にマーカーを表示します。

  • gridSize:ピクセル単位でのクラスタのグリッドサイズ

    this.markers = []; 
    data.forEach(function(entry) { 
        if (entry.location === null) return 
        marker = new google.maps.Marker({ 
         position: { 
          lat: location.location.coordinates[0], 
          lng: location.location.coordinates[1] 
         } 
        }); 
        markers.push(marker); 
    }); 
    markerCluster = new MarkerClusterer(this.map, this.markers, { 
        imagePath: 'https://developers.google.com/maps/documentation/javascript/examples/markerclusterer/m' 
    }); 
    

    また、あなたのニーズに合わせて設定するには、markerClustererの次のオプションをチェックしてください。

  • maxZoom:マーカーがクラスタの一部になることができる最大ズームレベル。
  • minimumClusterSize: クラスタ内にあるマーカーの最小数で、マーカーが非表示になり、カウントが表示されます。
+0

興味深いことに、マーカー上の地図を削除すると、クラスタ化された(現在は253個の)メーカーのみが表示されます。これは角度ダイジェストサイクルの問題ですか?私はこれに角1.5を使用していることを含めませんでした...私はこの問題を再現するための大問題を作成しようとしています。 –

+1

.forEachの.mapを変更したときに、それがうまく動作していないことを確認してください。私はこれが非同期問題のいくつかのタイプだと思いますか? –

+0

私は自分の答えでそれを変更したので正しいはずです。 – mxlse