在d3中显示星期几作为刻度

时间:2013-01-13 01:36:19

标签: javascript d3.js

我有一个数据集,它根据特定的数字输出星期几(0-6),并绘制数字(y轴)与星期几(x轴)的关系。如何让d3将0-6值映射到星期几(星期日到星期六)?

数据(第一行):

airline,dayoftheweek,cost
Transavia,1,195

enter image description here

我试过

var xAxis = d3.svg.axis()
        .scale(x)
        .ticks(6)
        .tickSubdivide(true)
        .tickSize(6, 3, 0)
        .tickFormat(d3.time.format("%A"))
        .orient("bottom");

但是因为第一个值是0,所以它似乎认为它对应于1970-01-01,这显然是星期四,并且不会显示任何其他内容。

1 个答案:

答案 0 :(得分:5)

事实证明这很简单:

var week = ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"];

使用tickformat:

.tickFormat(function(d, i){
    return week[d]
})