Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/svg/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Svg d3.js力有向图的不同节点符号_Svg_Graph_D3.js_Nodes_Force Layout - Fatal编程技术网

Svg d3.js力有向图的不同节点符号

Svg d3.js力有向图的不同节点符号,svg,graph,d3.js,nodes,force-layout,Svg,Graph,D3.js,Nodes,Force Layout,如何在d3.js的force directed库中将节点显示为不同的符号?我想实现类似于我在下面写的东西: var node = svg.selectAll(".node") .data(graph.nodes) .enter().append(function(d){return d.shape;}) .attr("class", "node") .attr("r", 5) .style("fill", function(d

如何在d3.js的force directed库中将节点显示为不同的符号?我想实现类似于我在下面写的东西:

  var node = svg.selectAll(".node") 
      .data(graph.nodes) 
    .enter().append(function(d){return d.shape;}) 
      .attr("class", "node") 
      .attr("r", 5) 
      .style("fill", function(d) { return color(d.group); }) 
      .call(force.drag); 
每个节点都有一个编码的形状(“矩形”、“圆形”等)。但是,我得到了一个错误:

Uncaught TypeError: Object function (d){return "circle";} has no method 'indexOf' 
与此相关的另一个问题是:如何在为每个形状应用不同属性之间切换?圆需要“r”属性,但矩形需要“高度”和“宽度”。谢谢

使用,如示例中所示