Я хочу выбрать несколько групп стран на карте с цветным заполнением. Я пишу код для активного состояния:
let map = am4core.create("chardiv", am4maps.MapChart);
map.geodata = am4geodata_worldHigh;
map.projection = new am4maps.projections.Miller();
let mapPolygonSeries = new am4maps.MapPolygonSeries();
map.series.push(mapPolygonSeries);
mapPolygonSeries.exclude = ['AQ'];
mapPolygonSeries.useGeodata = true;
let mapTemplate = mapPolygonSeries.mapPolygons.template;
mapTemplate.fill = am4core.color("#a2a2a2");
let hoverStates = mapTemplate.states.create("hover");
hoverStates.properties.fill = am4core.color("#828282");
let activeStates = mapTemplate.states.create("active");
activeStates.properties.fill = am4core.color("#23D55F");
let hoverActiveStates = mapTemplate.states.create("hoverActive");
hoverActiveStates.properties.fill = am4core.color("#008b2f");
mapTemplate.events.on("hit", function (ev) {
ev.target.isActive = !ev.target.isActive;
})
Кроме «активного», я добавил свое собственное состояние, и оно тоже хорошо работает. Но что, если я хочу, чтобы некоторые группы были выбраны при запуске страницы? Например, я хочу установить «активный» для России и Китая. Как я могу выбрать их без нажатия? Мне нужно что-то вроде getPolygonById
, но я не понимаю, как это работает. Я попытался получить элемент следующим образом:
console.log(mapPolygonSeries.getPolygonById("RU"));
Но он возвращает неопределенное значение.