D3的V3的主要和次要蜱?

Ric*_*ard 12 d3.js

我想绘制一个主要和次要刻度线不同的轴.

这个例子http://bl.ocks.org/vjpgo/4689130粗略地做了我想要的,但我不能让它与D3的V3一起工作.

.subDivide()一种弃用的方法?我在当前的文档中看不到它:https://github.com/mbostock/d3/wiki/SVG-Axes

如果是这样,在D3的V3中绘制主要和次要刻度的最佳方法是什么?我应该绘制两个完全不同的轴吗?

Lar*_*off 24

最新版本没有像以前的版本那样明确地绘制小刻度线,但是没有必要绘制另一个轴来实现你想要的.您可以使用比例生成额外的刻度,然后使用熟悉的.data()模式为那些尚未存在线的线绘制线.

xaxisg.selectAll("line").data(x.ticks(64), function(d) { return d; })
  .enter()
  .append("line")
  .attr("class", "minor")
  .attr("y1", 0)
  .attr("y2", -60)
  .attr("x1", x)
  .attr("x2", x);
Run Code Online (Sandbox Code Playgroud)

xaxisg是之前绘制轴的容器.比例用于生成所需数量的刻度,匹配由数据本身完成.这意味着在使用.enter()选择时,不会为已存在的那些绘制额外的刻度.

在这里完成jsfiddle .