D3 js图表倒置问题

时间:2014-03-28 06:55:45

标签: javascript d3.js charts html5-canvas

我的Fiddle

我正在研究d3js,我得到了带有一些数据的条形图的实现。 我需要将图表反转。

我尝试添加:

var y = d3.scale.linear()
        .domain([0, d3.max(jsonData.year)])
        .range([500, 0]);

并在栏上调用:

  .attr("y", function(d) {
            return y(d);
        });

没有工作..

我如何解决这个问题?我想我错过了什么.. 这就是我想要的轴: enter image description here

1 个答案:

答案 0 :(得分:1)

这是怎么回事? http://jsfiddle.net/jTs9A/3/

问题在于您的变换,在底部附加x和y轴时平移坐标。

canvas.append("g")
    .call(xAxis)
    .attr("transform", "translate(0,0)");
canvas.append("g")
    .call(yAxis)
    .attr("transform", "translate(-10,0)");

你之前有(0,250)和(-10,-50)

编辑:  http://jsfiddle.net/jTs9A/4/

你需要添加这个:

 .attr("y", function(d) {
        return  (h- d.year*10);  //Height minus data value
    })

其中h是图表区域的高度。检查评论中的tut(还没有足够的代表)