( ПРИМЕЧАНИЕ - решение предоставлено zeroin . Я просто цитирую здесь, чтобы быть полезным для тех, кто требует такого поведения в AmCharts 4 )
Вот ссылка с полным решением - https://codepen.io/team/amcharts/pen/bGNyXod
По сути, подписка на события dataitemsvalidated
и toggled
(на legend.itemContainers
) сделал работу.
Соответствующий фрагмент кода -
series.events.on("dataitemsvalidated", function(){
var data = [];
series.dataItems.each(function(dataItem){
data.push({name:dataItem.categoryX, fill:dataItem.column.fill, dataItem:dataItem});
})
legend.data = data;
})
legend.itemContainers.template.events.on("toggled", function(event) {
if(event.target.isActive){
event.target.dataItem.dataContext.dataItem.hide(series.interpolationDuration, 0, 0, ["valueY"]);
}
else{
event.target.dataItem.dataContext.dataItem.show(series.interpolationDuration, 0, ["valueY"]);
}
})
Надеюсь, это поможет.