У меня есть ряд данных с функцией фильтрации нескольких регионов.
Я включил setFocus на моей карте, чтобы иметь возможность центрировать карту после фильтрации.
Похоже, масштаб работает только с выделением одного региона.
Можно ли уменьшить масштаб карты на 2 уровня после фильтрации?
Вот пример набора данных:
var codes = ['AU', 'AF', 'BD', 'IN'];
Вот мой настройки карты:
var map = new jvm.Map({
container: $('#jvectormap-wrapper'),
backgroundColor: '#fff',
zoomOnScroll: false,
series: {
regions: [{
values: codes,
normalizeFunction: 'polynomial'
}]
},
regionStyle: {
initial: {
fill: '#eee'
}
},
});
Вот пример набора данных отфильтрованных значений
var filteredCodes = ['AU', 'AF'];
Вот мои настройки для центрирования карты в соответствии с отфильтрованными значениями:
map.setFocus({
regions: filteredCodes
});
map.setScale(5);
Кажется, что setScale не работает и выдает ошибку:
jquery.jvectormap.min.js:1 Error: <g> attribute transform: Expected number, "scale(AU,AF...".
Итак, я попробовал другой обходной путь, используя latLng для setFocus. Кажется, это работает, но я не могу найти документацию о том, как установить Focus с помощью latLng, используя массив координат.
Вот рабочий набор setFocus по latLng:
map.setFocus({
scale: 5,
lat: lat,
lng: lng,
});