Highchart - xAxis每周日期可以在任何一天开始吗?

时间:2013-07-29 21:11:37

标签: highcharts

我有一个非常基本的“行”每周日期图形。 我只需要在x轴的日期开始我的第一个点的同一天,但实际上它是从相应周的星期一开始。 我在doc上找到了一个startOfWeek选项,但只取两个值:0 =星期日,1 =星期一

例如,在这个例子中,我希望传奇开始于'pointStart'日期:2012年12月25日(星期二) 但传说开始24,因为它是星期一......

 $('#container').highcharts({
    chart: {
        type: 'line'
    },
    credits : {
      enabled : false
    },
    title: {
        text: false
    },
    xAxis: {  
        tickInterval:  7 * 24 * 3600 * 1000,
        type: 'datetime',
            startOnTick: true,
        labels: {
            format: '{value:%d/%m/%Y}',
            rotation: -45,
            y: 30,
            align: 'center'
        } 
    },
    yAxis: {
        min: 0,
        title: {
            text: 'HH'
        }
    },
    plotOptions: {
        series: {
            pointStart: Date.UTC(2012, 11, 25),
            pointInterval: 7 * 24 * 3600 * 1000
        }
    }, 
    series: [
        {
            name: 'Curva Tardía',
            data: [18, 27, 36, 36]
        }, {
            name: 'Curva Temprana',
            data: [9, 18, 27, 27]
        },{
            name: 'Curva Real',
            data: [0, 36, 45] 
        }
    ]
});

http://jsfiddle.net/MgJux/3/

您是否知道如何禁用此行为?

谢谢

1 个答案:

答案 0 :(得分:3)

试着将startOfWeek放在2

...
xAxis: {
    startOnTick: true,
    startOfWeek: 2,
    ...
},

让我们看看您的更新示例:http://jsfiddle.net/MgJux/4/

编辑:

要获得日期函数中的日期数,可以在javascript中使用Date对象:

var d = new Date(2012, 11, 25)

// ...

...
xAxis: {
    startOnTick: true,
    startOfWeek: d.getDay(),
    //           ^^^^^^^^^^
    ...
},