使用AmCharts网站(here)上的演示图表,如果我知道父级Phoebe和子级David,如何以编程方式获取David气泡?

我的目标是更改气泡的填充,这可以在事件处理程序中完成。考虑到我必须使用的内容,我只是不确定如何以编程方式选择想要的元素。

编辑:我意识到我可以遍历graph.data并修改color属性,但是我不能调用graph.invalidateRawData(),因为那不会引起颜色变化(有意义)。我真的不想强迫完整的图形重绘!

谢谢!

最佳答案

获取所需节点的最简单方法是设置id数据字段(可以与您的名称字段相同),然后使用series.getDataItemById方法检索数据项。

function changeColor(){
let dataItem = networkSeries.getDataItemById(networkSeries.dataItems, "Fifth");
dataItem.node.circle.fill = am4core.color("#00ff00");

// change color of all children
dataItem.children.each(function(child){
    child.node.circle.fill = am4core.color("#00ffff");
})
}


这是一个演示:
https://codepen.io/team/amcharts/pen/mZMYKx

该演示还说明了如何访问和更改数据项所有子项的颜色。

关于javascript - AmCharts 4强制定向图表-按父级选择气泡->子位置,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/56763150/

10-17 00:40