AmCharts 4 Force Directed Chart - Select Bubble by Parent -> Child Location

AmCharts 4 Force Directed Chart - Select Bubble by Parent -> Child Location

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

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

编辑:我意识到我可以遍历 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

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