d3.js包含类别和数字的数组

时间:2012-08-29 15:31:46

标签: javascript charts d3.js

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)");

1 个答案:

答案 0 :(得分: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)");