...bien estas confundiendo conceptos...cuando vos generas un mapa, se genera lo que se llama BOUNDS(limites) de visualización, estos limites dependen de varios factores, entre ellos la propiedad center y zoom. Con "center: new google.maps.LatLng(datos de longitud,datos de longitud)"...vos estas centrando la capa del mapa, no el marker...por eso ves el marker desplazado...lo que tenes que hacer, es extender esos bounds e incluir el marker...eso lo haces asi...
Código Javascript
:
Ver original...
...
...
var bounds = new google.maps.LatLngBounds();
var marcador = new google.maps.Marker({
position: new google.maps.LatLng(datos de longitud,datos de longitud),
map: map
});
bounds.extend(new google.maps.LatLng(lat del marker, lng del marker));
map.setCenter(bounds.getCenter());
map.fitBounds(bounds);
...
...
...