6

学习D3会很好。看了很多例子,我想我明白了。我的第一个项目是制作一个色轮,为简单起见没有过渡。但对于我的第一个项目来说,这似乎还不够简单!对于零项目,我试图在屏幕上显示一些东西。希望我写的东西(亲爱的阅读已经修复),而不是一个例子。

我做错了什么? http://jsfiddle.net/aGdMX/1/

var arc = d3.svg.arc()
    .innerRadius(40)
    .outerRadius(100)
    .startAngle(0)
    .endAngle(1)
    ;

var chart = d3.select("body").append("svg:svg")
    .attr("class", "chart")
    .attr("width", 420)
    .attr("height", 420).append("svg:g")
    .attr("transform", "translate(200,200)")
    ;

chart.selectAll("path")
    .data(data)
    .enter().append("svg:path")
    .attr("fill", function(d, i){
        return d3.rgb("black");
    })
    .attr("d", arc)
    ;

谢谢

4

1 回答 1

11

您在此处的示例没有定义任何数据。如果您只想静态绘制 svg,请跳过 selectAll() 和 data() 绑定:

chart
    .append("svg:path")
    .attr("fill", function(d, i){
        return d3.rgb("black");
    })
    .attr("d", arc)
    ;

或者定义一些数据并使用它来驱动绘图:

http://jsfiddle.net/findango/aGdMX/2/

(加上.attr("fill"......应该是.style("fill"......)

于 2013-02-27T04:34:28.233 回答