D3饼图未显示颜色

时间:2019-09-28 22:28:46

标签: javascript d3.js d3pie.js

我的代码是这样的。你能说出什么错误吗?尽管显示了部分文字,但我的颜色无法正确显示。数据集是美国随时间推移的死亡率。

function clicked(d,i) {

  var dataset = [d.females, d.males];
  var pcolor = ["green", "pink"];

  var outerRadius = 60;
  var innerRadius = 0;
  var arc = d3.arc()
        .innerRadius(innerRadius)
        .outerRadius(outerRadius);

  var pie = d3.pie();

  //Easy colors accessible via a 10-step ordinal scale
  //var color = d3.scaleOrdinal(d3.schemeCategory10);

  //Set up groups
  var arcs = svg.selectAll("g.arc")
          .data(pie(dataset))
          .enter()
          .append("g")
          .attr("class", "arcs")
          .attr("transform", "translate(" + outerRadius + "," + outerRadius + ")");

  //Draw arc paths
  arcs.append("path")
      .attr("d", arc)
      .attr("fill", function(d, i) {
        console.log(d);
         return pcolor(i);

      });

  //Labels
  arcs.append("text")
      .attr("transform", function(d) {
        return "translate(" + arc.centroid(d) + ")";
      })
      .attr("text-anchor", "middle")
      .text(function(d) {
        return d.value;
      });
}

0 个答案:

没有答案