2014-05-14 111 views
1

我写,因为我回到被困在Highcharts的问题。除了一件事外,我有一份月度图表,可以正常工作。缩放级别。 X轴始终显示为0(今天)的值,因此缩放级别不正确。我附上一张照片,试图更好地解释它。我需要在图表中设置此列。 我感谢您的帮助!谢谢!Highcharts专栏适合/调整在图表

由PHP传回的JSON(正确的结果):

{"data":[[1401580800000,2],[1400025600000,0],[1400025600000,0],[1400025600000,0],[1400025600000,0],[1400025600000,0],[1400025600000,0],[1400025600000,0],[1400025600000,0],[1400025600000,0],[1400025600000,0],[1400025600000,0],[1400025600000,0],[1400025600000,0],[1400025600000,0],[1400025600000,0],[1400025600000,0],[1400025600000,0],[1400025600000,0],[1400025600000,0],[1400025600000,0],[1400025600000,0],[1400025600000,0],[1400025600000,0],[1400025600000,0],[1400025600000,0],[1400025600000,0],[1400025600000,0],[1400025600000,0],[1400025600000,0]]} 

和JavaScript文件:

chart = new Highcharts.Chart({ 
chart: { 
    renderTo: 'divStatsGrupo', 
    plotBackgroundColor: null, 
    plotBorderWidth: null, 
    plotShadow: false 
    }, 
    title: { 
    text: tituloMes 
    }, 

    tooltip: { 
      formatter: function() { 
      return Highcharts.dateFormat('%d/%m/%Y',new Date(this.x)) + '<br/>' +'Alarmas: ' + this.y        
      } 
     },  
    xAxis: {  
    type: 'datetime', 
    dateTimeLabelFormats : { 
    day: '%e. %b', 
    labels: { 
     style: { 
      width: '200px','min-width': '100px' 
        }, 
     useHTML : true, 

       } 
       } 
      }, 

yAxis: { 
title: { 
    text: 'Total alarmas' 
    }, 
    allowDecimals: false, 
    min: 0 
    }, 

    series : [{ 
    showInLegend: false, 
      name : 'Grafica Mensual', 
      type : 'column', 
      data: data.data,  
    dataLabels: { 
       enabled: true, 
       rotation: 0, 
       color: '#000000', 
       align: 'center', 
       y: 0, 
       style: { 
        fontSize: '14px', 
        fontFamily: 'Verdana, sans-serif', 
       }} 
       }] 
     }); 
}); ///cierra get 

编辑:我需要一个月的图形(用户选择),但是,白区域和Xaxis仅为所选月份提供信息。该PHP文件返回一个正确的JSON链,但是高点不符合列的罚款。对不起我的英语不好!

enter image description here

回答

1

问题是与你的JSON,在那里你有重复值相同的时间戳。只要删除它们。

然后!您有未排序的数据,它应按时间戳升序排序。

固定后,它工作正常,请参阅:http://jsfiddle.net/4nCx3/

var data = { 
    "data": [ 
     [1400025600000, 0], 
     [1401580800000, 2] 
    ] 
}; 
+0

Thaks,你的权利! – xavi