ハウツー 全地点が画面に収まるように表示するには

複数の地点を置いたとき、centerzoom を手で決めるのではなく、全地点を囲む範囲を計算して地図を合わせます。データが変わっても常に全部が見えます。

コード

embed(HTML の属性だけ)ではこの機能は使えません。上のタブで suite / react のコードに切り替えてください。

結果

上のコードは、それぞれのタブの下でそのまま動いています。初期表示の center / zoom がどうであれ、読み込み後に全地点がひと目で見える構図に移動します。

うまくいかないとき
  • 端の点が切れる → padding を増やしてください。マーカーはピンの高さがあるので、上側は特に余白が要ります。
  • 点が1つしかない、または全点が同じ座標 → 範囲の面積が 0 になり、極端にズームインします。点が1つのときは centerzoom を直接指定する方が簡単です。