D3.js:显示有限数量的刻度

时间:2013-09-16 17:40:10

标签: d3.js

我正在尝试使用d3.ticksAccording to the documentation,我应该可以限制轴上显示的刻度数。

然而,这似乎并没有限制滴答的次数:

xAxis = d3.svg.axis().scale(xScale).orient("bottom").ticks(2)

是因为我的规模是有序的吗?

JSFiddle:http://jsfiddle.net/samselikoff/9tfD2/1/

2 个答案:

答案 0 :(得分:8)

axis.ticks仅在基础比例实现ticks函数时才有效,而序数比例则不然。默认情况下,序数标度的轴标记由标度的域组成,但您可以通过使用axis.tickValues提供显式标记值来覆盖它。

答案 1 :(得分:0)

文件还说(在比例部分)

  

指定的计数只是一个提示;根据输入域,比例可能会返回更多或更少的值。

这就是这里发生的事情 - 对于序数比例,所有值都被采用。

然而,您可以通过提供明确的刻度值来覆盖它,例如

d3.svg.axis().scale(xScale).orient("bottom").tickValues(["12am", "8pm"])