更改焦点时,D3刻度会改变位置

时间:2015-10-06 19:28:50

标签: javascript d3.js graph nvd3.js

我正在使用带焦点图表的NVD3多杆图。我希望我的辅助(顶部)x轴上的刻度线与主(底部)x轴上的条形正确对齐 - 最好是在它们的开头。目前,蜱不与同一地方的酒吧对齐。其中一些是在相邻的日期或酒吧的中间,如下所示:

enter image description here

刻度与特定日期的事件一致。两个轴使用相同的比例。它的域在刷子事件上根据上下文图形中的选择范围分配,如下所示:

 x.domain([new Date(extent[0]), new Date(extent[1])]);

我也试过这个:

 x.domain([new Date(extent[0]), d3.time.day.offset(new Date(extent[1]), 1)]);

在条形图的前面很好地排列开始选择,但是当焦点范围改变时,不会保持刻度。如何保持与他们的酒吧一致?

编辑:我使用tickValues()指定刻度的位置。 x是d3.time.scale()

1 个答案:

答案 0 :(得分:0)

问题是我在某些日期缺少条形数据,所以标尺上的日期数量与条形数不匹配。我通过在缺失日期的数据中插入0值来修复此问题。