D3.js时间刻度:每月间隔很好的间距?

时间:2014-11-13 12:58:57

标签: javascript d3.js

我使用D3.js创建一些简单的条形图,并使用d3.time.scale()作为x轴。 但是,我偶然发现了一个不正常现象(或者在我看来,虽然当然,我错了:P)

当我按月间隔生成带刻度的刻度时,刻度之间的差异相等。

scaleX = d3.time.scale()
  .range([0, 1000])
  .domain([new Date('2014-01'), new Date('2014-12')])

scaleX(new Date("2014-01"))  // 0
scaleX(new Date("2014-02"))  // 9.28...  (diff ~ 9.3)
scaleX(new Date("2014-03"))  // 17.66... (diff ~ 8.4)
scaleX(new Date("2014-04"))  // 26.94... (diff ~ 9.3)

这会导致图形中的条纹不均匀,导致图形丑陋......

用几个月作为刻度均匀分隔条形图的正确方法是什么?我意识到有可能使用ordinal比例来做到这一点,但它感觉不对,顺序量表也不会勾勒几个月我没有任何数字的刻度。数据


编辑:对这个问题稍作澄清: 既然SO是针对程序员的,那么我只是问过"正确的方法"使蜱均匀分布。但我真正想问的是:

可以接受显示时间长度不等的时间表吗?

0 个答案:

没有答案