2016-05-12 36 views
0

我嘗試製作具有多個系列類型,行和列的圖表。 爲例這裏:Jsfiddle當我在highstock圖表中設置多個系列類型時,數據顯示錯誤

$(function() { 
var seriesOptions = [], 
    seriesCounter = 0, 
    names = ['MSFT', 'AAPL', 'GOOG']; 

/** 
* Create the chart when all data is loaded 
* @returns {undefined} 
*/ 
function createChart() { 

    $('#container').highcharts('StockChart', { 

     rangeSelector: { 
      selected: 4 
     }, 

     yAxis: { 
      labels: { 
       formatter: function() { 
        return (this.value > 0 ? ' + ' : '') + this.value + '%'; 
       } 
      }, 
      plotLines: [{ 
       value: 0, 
       width: 2, 
       color: 'silver' 
      }] 
     }, 

     plotOptions: { 
      series: { 
       compare: 'percent' 
      } 
     }, 

     tooltip: { 
      pointFormat: '<span style="color:{series.color}">{series.name}</span>: <b>{point.y}</b> ({point.change}%)<br/>', 
      valueDecimals: 2 
     }, 

     series: seriesOptions 
    }); 
} 

$.each(names, function (i, name) { 

    $.getJSON('https://www.highcharts.com/samples/data/jsonp.php?filename=' + name.toLowerCase() + '-c.json&callback=?', function (data) { 

     seriesOptions[i] = { 
      name: name, 
      data: data, 
     }; 
     if(name == 'GOOG'){ 
      seriesOptions[i].type = 'column'; 
     } 

     // As we're loading the data asynchronously, we don't know what order it will arrive. So 
     // we keep a counter and create the chart when all the data is loaded. 
     seriesCounter += 1; 

     if (seriesCounter === names.length) { 
      createChart(); 
     } 
    }); 
}); 

});

當我沒有縮放我有錯誤的數據(超過正常),當我放大我有良好的數據。

是什麼問題?我不知道爲什麼serie類型可以更改數據

感謝您的幫助!

回答

1

Defaulty the Highstock使用dataGrouping,根據單位分組。您可以通過參數禁用該功能。

plotOptions:{ 
    series:{ 
     dataGrouping:{ 
      enabled: true 
     } 
    } 
} 
+1

工作很好,非常感謝! – Florian

相關問題