使用 AmCharts 网站 ( here ) 提供的演示图表,如果我知道父级 Phoebe
和子级 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/