这个新手问题与InfoVis Visualization项目有关。
虽然可以在JSON数据中定义节点的颜色和其他属性:
id: "",
name: "",
data: { color:""},
我想根据另一个元素设置节点的颜色,例如“risk”的值:
id: "",
name: "",
data: { risk:"1"},
e.g。
if(node.data.risk == "1") {
node.setData('color', '#ffcccc');
在加载JSON时,根据数据内容更改节点颜色的最佳方法是什么。
更新
到目前为止,这个解决方案有效:
onBeforePlotNode: function(node)
{
if(node.data.risk == '2')
{
node.data.$color = '#ff5050';
}
if(node.data.risk == '1')
{
node.data.$color = '#ffcccc';
}
if(node.data.risk == '0')
{
node.data.$color = '#1aff1a';
}
},
但是,在单击其中一个节点之前不会呈现新颜色。
跟进问题:如果这是一个合理的解决方案,当可视化首次加载时,如何呈现新颜色?
更新
代码必须放在页面末尾。