1

我一直在尝试将最小和最大字符串日期插入到我的 highcharts 图中,如下所示:

    var formatted_startDate = startDate.replace(/-/g, ",");
    var formatted_endDate = endDate.replace(/-/g, ",");

    //Format now is "yyyy,mm,dd"
    options = {
       chart: {
           renderTo: 'container',
           type: 'bar'
       },
       xAxis: {
          type: "datetime",
        dateTimeLabelFormats: {
            day: '%m-%d'   
            },
        tickInterval: 24 * 3600 * 1000,
        min: Date.UTC(formatted_startDate),
        max: Date.UTC(formatted_endDate)

       },

显然上述方法不起作用,因为我正在传递一个字符串。我只是这样写它来说明我正在尝试做的事情,而不是发布无数失败尝试的代码。我尝试使用 JSON.parse 和 eval() 但语法有问题。

任何帮助,将不胜感激。干杯

4

1 回答 1

0

最终只使用了 highcharts API 中的 setExtremes 方法

    var formatted_startDate = startDate.replace(/-/g, ",");
    var formatted_endDate = endDate.replace(/-/g, ",");
            //Format now is "2000,00,00"

    var startdatearray = formatted_startDate.split(",");
    var enddatearray = formatted_endDate.split(",");

    var sy = parseInt(startdatearray[0]);
    var sm = parseInt(startdatearray[1],10) - 1;
    var sd = parseInt(startdatearray[2]);
    var ey = parseInt(enddatearray[0]);
    var em = parseInt(enddatearray[1],10) - 1;
    var ed = parseInt(enddatearray[2]); 

    chart = new Highcharts.Chart(options);
        chart.xAxis[0].setExtremes(Date.UTC(sy,sm,sd), Date.UTC(ey, em, ed)); 
于 2012-10-07T03:02:05.583 回答