1

在这种情况下,我使用的是 JIT Hypertree。我将区分一个节点的颜色与另一个节点的颜色,以便树上的每个节点都有自己的颜色。无论如何要更改单个颜色,使其与其他节点不同?

我只是设法改变了所有节点的颜色,但不是单独的。

 Node: {
   dim: 9,
   color: "#009933" 
 },
4

1 回答 1

1

您必须在 Node 上将overridable属性设置为 true。

Node: {
    dim: 9,
    overridable: true 
},

然后,在加载数据之后和绘制之前,遍历节点并使用setData设置各个颜色。这是一个使用随机颜色的示例,但您也可以将颜色插入 JSON 数据并从那里提取:

ht.graph.eachNode(function(node) {  
    node.setData('color', "hsl("+Math.random()*360+",100%,50%)");
});

现在,无耻的插件:我写了一个库来生成基于 ID 的颜色。因此,如果您不想手工挑选颜色并且希望颜色与数据具有持久关系,那将有所帮助。这是使用它的示例。

ht.graph.eachNode(function(node) {  
    node.setData('color', $.fn.autumn.getColor(node.id));
});
于 2013-10-21T13:50:36.503 回答