Javascript 如何为Force Network d3.js中的节点组分配一致的颜色
我试图为我的部队网络图中的特定组指定特定颜色。这样,在我的所有图形中,组被一致地分配相同的颜色。组名为“a”、“b”、“c”、“d”,并根据当前的顺序分配颜色 例如,我想要的是“a”始终分配给蓝色,“b”始终分配给红色 我对节点着色的JavaScript如下所示:Javascript 如何为Force Network d3.js中的节点组分配一致的颜色,javascript,d3.js,Javascript,D3.js,我试图为我的部队网络图中的特定组指定特定颜色。这样,在我的所有图形中,组被一致地分配相同的颜色。组名为“a”、“b”、“c”、“d”,并根据当前的顺序分配颜色 例如,我想要的是“a”始终分配给蓝色,“b”始终分配给红色 我对节点着色的JavaScript如下所示: var color = d3.scale.category10(); var node = vis.selectAll(".node") .data(force.nodes()) .enter().append("g") .attr
var color = d3.scale.category10();
var node = vis.selectAll(".node")
.data(force.nodes())
.enter().append("g")
.attr("class", "node")
.style("fill", function(d) { return color(d.group); })
.style("opacity", 0.9)
.on("mouseover", mouseover)
.on("mouseout", mouseout)
.call(force.drag);
任何帮助都将不胜感激
谢谢d3.scale.category10()
(或v4中的d3.schemeCategory10
)以先到先得的方式工作。这意味着,如果不设置域
通过将传递给刻度的每个唯一值从范围中指定一个新值,将根据使用情况隐式推断域。()
我们可以很容易地展示这一点。看看这个演示,我使用了两种色阶:
var数据=[“a”、“b”、“c”、“d”];
var color=d3.scale.category10();
var color2=d3.scale.category10();
变量主体=d3。选择(“主体”)
变量段落1=正文。选择全部(空)
.数据(数据)
.输入()
.附加(“p”)
.样式(“背景色”,功能(d){
返回颜色(d)
})
.html(字符串);
正文。附加(“br”);
变量段落1=正文。选择全部(空)
.data(data.reverse())
.输入()
.附加(“p”)
.样式(“背景色”,功能(d){
返回颜色2(d)
})
.html(字符串)代码>
p{
边际:0px;
}
d3.scale.category10()
(或v4中的d3.schemeCategory10
)以先到先得的方式工作。这意味着,如果不设置域
通过将传递给刻度的每个唯一值从范围中指定一个新值,将根据使用情况隐式推断域。()
我们可以很容易地展示这一点。看看这个演示,我使用了两种色阶:
var数据=[“a”、“b”、“c”、“d”];
var color=d3.scale.category10();
var color2=d3.scale.category10();
变量主体=d3。选择(“主体”)
变量段落1=正文。选择全部(空)
.数据(数据)
.输入()
.附加(“p”)
.样式(“背景色”,功能(d){
返回颜色(d)
})
.html(字符串);
正文。附加(“br”);
变量段落1=正文。选择全部(空)
.data(data.reverse())
.输入()
.附加(“p”)
.样式(“背景色”,功能(d){
返回颜色2(d)
})
.html(字符串)代码>
p{
边际:0px;
}