不同日期范围的Highcharts图表X轴标签

8
我写了下面的代码,可以为选择的日期(起始日期和结束日期)生成面积图表。
$(document).ready(function() {
    var options = {
        "series": [{
            "showInLegend": false,
            "color": "#D0D0D0",
            "name": "Revenue",
            "data": [0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}],
        "credits": {
            "enabled": false
        },
        "chart": {
            "renderTo": "highchart_id",
            "defaultSeriesType": "area",
            "shadow": true
        },
        "title": {
            "text": null,
            "align": "center",
            "x": 0,
            "y": 20
        },
        "xAxis": {
            "type": "datetime",
            "dateTimeLabelFormats": {
                "month": "%e. %b",
                "year": "%b"
            },
            "labels": {
                "enabled": "false"
            }
        },
        "legend": {
            "enabled": true
        },
        "yAxis": {
            "title": {
                "text": ""
            },
            "labels": {
                "enabled": true
            }
        },
        "plotOptions": {
            "area": {
                "stacking": "normal",
                "lineColor": "#3E3E3E",
                "lineWidth": 3,
                "marker": {
                    "lineWidth": "1",
                    "lineColor": "#3E3E3E",
                    "states": {
                        "hover": {
                            "enabled": true,
                            "radius": 1
                        }
                    }
                }
            },
            "series": {
                "pointStart": 1335823200000,
                "pointInterval": 86400000
            }
        }
    };
    var chart = new Highcharts.Chart(options);
});​

x轴上的日期间隔少了一天。 在这里,系列值2是5月10日的数据,但在图表中显示为5月9日。

我对这个highchart不太熟悉,有人可以提供解决方案吗? 如果您需要更多问题的澄清,请让我知道。

1个回答

23

尝试在声明图表之前添加此代码

Highcharts.setOptions({      
  time: {
    useUTC: false
  }
});

默认情况下,Highcharts 使用协调世界时(UTC)时间。添加上述代码后,它将使用浏览器的时区。


1
这已经过时了,现在需要为每个图表执行以下操作: Highcharts.setOptions({ time: { useUTC: false } }); - Greg Holst

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接