Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/442.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 整整一个月都在跳高_Javascript_Highcharts - Fatal编程技术网

Javascript 整整一个月都在跳高

Javascript 整整一个月都在跳高,javascript,highcharts,Javascript,Highcharts,我正试图用计算机绘制散点图。我正确地得到了日期和值。奇怪的是,假设我必须在8月5日到10月25日之间绘制图表,但它在9月5日到11月25日绘制数据。它跳了整整一个月 这是我的密码 var generate_scatter = function(data) { var range = [] for (a in data['response']){ receive_date = a.split("-"); temp = [Date.UTC(parseInt(r

我正试图用计算机绘制散点图。我正确地得到了日期和值。奇怪的是,假设我必须在8月5日到10月25日之间绘制图表,但它在9月5日到11月25日绘制数据。它跳了整整一个月

这是我的密码

var generate_scatter = function(data) {
    var range = []
    for (a in data['response']){
      receive_date = a.split("-");
      temp = [Date.UTC(parseInt(receive_date[0]), parseInt(receive_date[1]), parseInt(receive_date[2])),data['response'][a]];
      range.push(temp);
    }
    $('#container').highcharts({
        chart: {
            type: 'scatter',
            zoomType: 'xy'
        },
        title: {
            text: 'Number of packages received in the warehouse against time.'
        },
        subtitle: {
            text: 'Source: MENAERP Database'
        },
        xAxis: {
            type: 'datetime',
            dateTimeLabelFormats: { // don't display the dummy year
                month: '%e. %b',
                year: '%b'
            },
            title: {
                text: 'Date'
            },
            startOnTick: true,
            endOnTick: true,
            showLastLabel: true
        },
        yAxis: {
            title: {
                enabled: true,
                text: 'Number of packages received in warehouse'
            }

        },
        legend: {
            layout: 'vertical',
            align: 'left',
            verticalAlign: 'top',
            x: 100,
            y: 70,
            floating: true,
            backgroundColor: (Highcharts.theme && Highcharts.theme.legendBackgroundColor) || '#FFFFFF',
            borderWidth: 1
        },
        plotOptions: {
            scatter: {
                marker: {
                    radius: 5,
                    states: {
                        hover: {
                            enabled: true,
                            lineColor: 'rgb(100,100,100)'
                        }
                    }
                },
                states: {
                    hover: {
                        marker: {
                            enabled: false
                        }
                    }
                },
                tooltip: {
                   headerFormat: '<b>{series.name}</b><br>',
                    pointFormat: '{point.x:%e. %b}: {point.y:.2f} Packages'
                }
            }
        },
        series: [{
            name: 'Packages',
            color: 'rgba(223, 83, 83, .5)',
            data : range
     }]
    });

};
如果你从外部调用,这里是实际数据

{'response' : {'2014-08-28': 127, '2014-08-11': 162, '2014-09-11': 278, '2014-08-17': 147, '2014-08-07': 172, '2014-08-16': 177, '2014-09-27': 362, '2014-08-09': 180, '2014-08-21': 143, '2014-08-20': 324, '2014-08-27': 178, '2014-08-26': 210, '2014-08-25': 148, '2014-09-30': 301, '2014-09-15': 289, '2014-09-14': 177, '2014-09-17': 257, '2014-09-16': 161, '2014-08-05': 198, '2014-09-10': 202, '2014-09-13': 308, '2014-08-06': 175, '2014-10-01': 219, '2014-10-02': 170, '2014-10-06': 390, '2014-10-07': 230, '2014-10-08': 308, '2014-10-09': 209, '2014-08-23': 206, '2014-09-06': 262, '2014-09-07': 257, '2014-08-18': 213, '2014-08-19': 252, '2014-09-02': 194, '2014-09-18': 261, '2014-09-20': 232, '2014-09-21': 214, '2014-09-22': 137, '2014-09-23': 219, '2014-09-24': 184, '2014-09-25': 167, '2014-09-08': 240, '2014-09-09': 349, '2014-09-28': 329, '2014-09-29': 216, '2014-08-10': 205, '2014-08-24': 154, '2014-08-30': 165, '2014-08-31': 263, '2014-08-14': 168, '2014-09-01': 219, '2014-08-12': 134, '2014-10-13': 38, '2014-10-12': 250, '2014-10-11': 305, '2014-08-13': 207, '2014-09-03': 251, '2014-09-04': 189, '2014-08-15': 8}}

UTC月份似乎从0开始。所以这个小把戏解决了你的问题:

temp = [Date.UTC(parseInt(receive_date[0]), parseInt(receive_date[1])-1,parseInt(receive_date[2])),data['response'][a]];

以下是有关转换范围的文档

[[1411862400000,127],[1410393600000,162],[1412985600000,278],[1410912000000,147],[1410048000000,172],[1410825600000,177],[1414368000000,362],[1410220800000,180],[1411257600000,143],[1411171200000,324],[1411776000000,178],[1411689600000,210],[1412380800000,189],[1410739200000,8]]
第一个日期1411862400000 var date=新日期1411862400000//2014年9月28日00:00:00.000Z对应于9月而非8月

看这把小提琴


检查您的日期。UTC检查正如A-Tomy-k所说,您是否可以添加范围数据作为样本数据用于测试?您是否可以将其粘贴到适当的数据中?@Raunakathuria更新了问题。就是这样。我知道我犯了一个非常愚蠢的错误:p谢谢。别担心。如果UTC转换再次出现问题,可以在此处检查错误:
[[1411862400000,127],[1410393600000,162],[1412985600000,278],[1410912000000,147],[1410048000000,172],[1410825600000,177],[1414368000000,362],[1410220800000,180],[1411257600000,143],[1411171200000,324],[1411776000000,178],[1411689600000,210],[1412380800000,189],[1410739200000,8]]