我怎样才能将网格线带到前面?

时间:2016-10-25 10:18:08

标签: d3.js

在d3图表中,如何将网格线带到条形图的正面或背面。哪个参数负责相同?

Sample working fiddle

刻度的代码是: -

 var yAxisGrid = yAxis.ticks(numberOfTicks)
.tickSize(w, 0)
.tickFormat("")
.orient("right"); 

1 个答案:

答案 0 :(得分:3)

SVG中没有类似于 z索引http://www.w3schools.com/cssref/pr_pos_z-index.asp)的内容。

所以,你的问题:

  

哪个参数负责相同?

答案是: none

话虽这么说,这是规则:后来画的人仍然在上面(就像真正的画家在画布上使用墨水一样)。

因此,只需将圆圈的代码移动到网格线的代码之前。

//create the circles
svg.selectAll("circle")
.data(dataset)
.enter()
.append("circle")
/)...

//draw axes here
svg.append("g")
.attr("class", "axis") //assign "axis" class
.attr("transform", "translate(0," + (h - padding) + ")")
.call(xAxis);
//...

这是你更新的小提琴(我把圈子放大了):http://jsfiddle.net/e4L7sn37/