人力车只在某些点上显示网格线

时间:2013-05-14 07:59:51

标签: javascript d3.js rickshaw

我有一辆用人力车制作的图表:

My graph

我设置了刻度线,这样如果值为-24,0或24,它们只有一个标签:

// Instantiate x-axis
var xAxis = new Rickshaw.Graph.Axis.X({
  graph: graph,
  orientation: 'bottom',
  pixelsPerTick: 25,
  element: graphXAxis,
  tickFormat: function(n) {
    switch(n) {
      case -24: return '24 hours ago';
      case 0: return 'Now';
      case 23: return '24 hours from now';
    }
  }
});

但是网格线出现在每一个刻度线上,甚至是我的case语句没有返回的那些! 我怎样才能摆脱其余的网格线?

1 个答案:

答案 0 :(得分:5)

您可以使用 ticks 键指定所需的刻度数。但是,这不会让您具体控制生成这些滴答的位置,并且您可能无法准确获得所请求的数量。通过对RickShaw的一些额外扩展,您可以获得对滴答的更多控制,详细信息包括支持代码here

var xAxis = new Rickshaw.Graph.Axis.X({
  graph: graph,
  orientation: 'bottom',
  pixelsPerTick: 25,
  ticks:3,
  element: graphXAxis,
  tickFormat: function(n) {
    switch(n) {
      case -24: return '24 hours ago';
      case 0: return 'Now';
      case 23: return '24 hours from now';
    }
  }
});