Я создал простую тепловую карту (используя google maps api v3), в которую я хотел бы добавить элемент базовой анимации.
У меня есть несколько коллекций точек данных, каждая коллекция представляет период времени (скажем, 30 минут).
Я хочу «воспроизвести» тепловые карты, соответствующие одной коллекции данных, за которой следует следующая коллекция, следующая и так далее. Почти как воспроизведение кадров видео.
Я попытался сделать это с помощью MVCArray, который я очищаю и обновляю новыми точками данных. Что-то вроде этого
data = new google.maps.MVCArray(datapoints);
затем через несколько секунд:
for (i=0;i<data.getLength();i++){
data.removeAt(i);
}
Это не работает, потому что новые данные тепловой карты будут просто добавлены поверх старой тепловой карты в браузере, даже если массив данных был успешно очищен.
Эта проблема и базовое решение описаны здесь: Удалить слой HeatmapLayer с карт Google
Решение состоит в том, чтобы очистить тепловую карту, используя:
heatmap.setMap(null)
Однако у меня это не работает, так как это полностью очистит тепловую карту и оставит карту пустой на секунду или две. То есть эффект анимации теряется.
Любые предложения о том, что я мог бы сделать?