Estoy configurando varios marcadores en mi mapa y puedo establecer estáticamente los niveles de zoom y el centro, pero lo que quiero es cubrir todos los marcadores y hacer el mayor zoom posible teniendo todos los mercados visibles
Los métodos disponibles son los siguientes
y
Ni setCenteradmite entrada de ubicación múltiple o matriz de ubicación ni setZoomtiene este tipo de funcionalidad

javascript
google-maps-api-3
Trikaldarshi
fuente
fuente

latlnga unboundsobjeto cada vez que agregue un marcador y configure su mapa para que se ajuste a los límites finales. Vea la respuesta aquí: stackoverflow.com/questions/1556921/…Respuestas:
Necesitas usar el
fitBounds()método.Documentación de developers.google.com/maps/documentation/javascript :
fuente
getPositionmétodo?LatLngLiterallugar de tener una instancia de Marker. por ejemplo,bounds.extend({lat: 123, lng: 456}).fitBounds(bounds, int)que le permitirá tener un poco de espacio entre los marcadores y los bordes del mapa (o menos espacio si lo necesita). Ver documentaciónPara extender la respuesta dada con algunos trucos útiles:
ACTUALIZACIÓN:
La investigación adicional en el tema muestra que fitBounds () es asincrónico y es mejor hacer una manipulación de Zoom con un oyente definido antes de llamar a Fit Bounds.
Gracias @Tim, @ xr280xr, más ejemplos sobre el tema: SO: setzoom-after-fitbounds
fuente
addListenerOnceonzoom_changedpara establecer el zoom después de que se haya inicializado su valor.yourMap,mapythis. Tal vez sea una buena idea hacerlo más consistente.El tamaño de la matriz debe ser mayor que cero. De lo contrario, tendrá resultados inesperados.
fuente
Existe esta
MarkerClustererutilidad del lado del cliente disponible para Google Map, tal como se especifica aquí en los Artículos para desarrolladores de Google Map , a continuación se describe brevemente cuál es su uso:Hay muchos enfoques para hacer lo que solicitó:
Puede leer sobre ellos en el enlace proporcionado arriba.
Marker Clustererutiliza agrupación basada en cuadrícula para agrupar todos los marcadores que desean la cuadrícula. La agrupación basada en cuadrículas funciona al dividir el mapa en cuadrados de cierto tamaño (el tamaño cambia en cada zoom) y luego agrupar los marcadores en cada cuadrado de cuadrícula.Antes de agrupar
Después de agrupar
Espero que esto sea lo que estabas buscando y esto resolverá tu problema :)
fuente