У меня была эта проблема, и я обнаружил, что в моем случае проблема заключалась в том, что я создавал div map_canvas с использованием javascript innerHTML.
В первый раз карта будет отображаться правильно, но во второй раз, когда я назову ее (хотя и другую карту), будет отображаться та же карта (неправильная карта), а в третий раз я вызову другую картуон будет отображаться только в верхнем левом углу.Это будет в верхнем углу для всех остальных звонков.
Все, что мне нужно было сделать, это поместить div в исходный HTML, и с этого момента он прекрасно работает.
Надеюсь, это кому-нибудь поможет!