我有一个针对特定数字输出星期几(0-6)的数据集,并针对星期几(x轴)绘制了数字(y轴)。如何获得d3将0-6值映射到星期几(星期日至星期六)?

数据(第一行):

airline,dayoftheweek,cost
Transavia,1,195




我试过了

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(显然是星期四),并且未显示其他任何内容。

最佳答案

事实证明很简单:

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


使用tickformat:

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

09-16 10:29
查看更多