2

d3js 专家

我有这些数组

var dados = [
["Brasil", 20], 
["Canada", 31],
["Japao", 29],
["USA", 26],
["Inglaterra", 21],
["Nova Zelandia", 25],
["Turquia", 34]
];

我喜欢将数组dados绑定到我的图表。国家名称文本

可以直接做吗?怎么做?

chart.selectAll("rect")
     .data(function(d, i) { return d[i][1];})
     .enter().append("rect")
     .attr("y", function(d) {return d[0];})
     .attr("width", x)
     .attr("height", y.rangeBand()-6)
     .attr("transform", "translate(4,0)");

chart.selectAll("text")
     .data(function(d, i) {return d[i][0];})
     .enter().append("text")
     ...

太感谢了


我用下面的代码得到了值 - 粗体

 var x = d3.scale.linear()
     .domain([0, **d3.max(dados)[1]** ])
     .range([0, 500]);


 chart.selectAll("rect")
  .data(**dados**)
  .enter().append("rect")
  .attr("y", function(d) {return d[0];})
  .attr("width", **function(d) { return x(d[1]);}** )
  .attr("height", y.rangeBand()-6)
   .attr("transform", "translate(4,0)");
4

1 回答 1

0

校正内** **

 var x = d3.scale.linear()
    .domain([0, **d3.max(dados)[1]** ])
    .range([0, 500]);


 chart.selectAll("rect")
    .data(**dados**)
    .enter().append("rect")
    .attr("y", function(d) {return d[0];})
    .attr("width", **function(d) { return x(d[1]);}** )
    .attr("height", y.rangeBand()-6)
    .attr("transform", "translate(4,0)");
于 2012-08-30T16:32:35.527 回答