d3 - 如何在水平条形图中识别条形图的底部

时间:2013-06-19 09:47:18

标签: d3.js bar-chart

好的,所以我需要建立几个位于第一个栏和其他栏之间的黄色线条。

var y = d3.scale.ordinal()
    .rangeRoundBands([0, height], .2);

...

svg.selectAll(".bar")
    .data(data)
    .enter().append("rect")
    .attr("class", function(d) { return "bar " + d.label; })
    .attr("id", function(d){return d.label})
    .attr("x", function(d) { return x(Math.min(0, d.value)); })
    .attr("y", function(d) { return y(d.label); })
    .attr("width", function(d) { return Math.abs(x(d.value) - x(0)); })
    .attr("height", y.rangeBand()); 

这就是我正在尝试构建黄线的地方:

svg.append("line")
  .attr("class", "yellow")
  .attr("x1", 0 )
  .attr("x2", width )
  .attr("y1", y.rangeBand() + 14)
  .attr("y2", y.rangeBand()+14);

所以,这样,线条或多或少处于我需要的位置,但是如果杆的数量发生变化(并且它发生)并且因此杆的高度发生变化,它显然会偏离位置并最终落后于酒吧。

关于如何找到价值的任何想法?

0 个答案:

没有答案
相关问题