2012-07-06 115 views
1

我使用示例中显示的highcharts,但出于某种原因,它不再使用我的数据。我看到结果的唯一时间是缩小到全部,然后只显示一个点。任何线索,我做错了什么将非常感激。意外的高楼结果

如何即时得到我的数据:

$jsResult = array(); 
$arResults = $wpdb->get_results("SELECT tsDay, nPrice FROM sometable", ARRAY_A); 

    foreach($arResults as $key => $val){ 

     //$val['nPrice'] = floatval($val['nPrice']); 

     //$jsResult[$key][0] = ($val['tsDay']*1000); 
     //$jsResult[$key][1] = intval($val['nPrice']); 

     //$strDate = date("Y/m/d", $val['tsDay']); 
     //$strDate = explode('/', $strDate); 

     $jsResult[$val['tsDay']] = '['.($val['tsDay']*1000).', '.$val['nPrice'].']'; 
    } 

    $jsResult = "[\n".implode(",\n", $jsResult)."\n]"; 
    ?> 

图表:从Highcharts

$(document).ready(function() { 

    var data = <?php echo $jsResult; ?>; 

    // create the chart 
    window.chart = new Highcharts.StockChart({ 
     chart : { 
      renderTo : 'graph', 
      zoomType: 'x' 
     }, 

     navigator : { 
      series : { 
       data : data 
      } 
     }, 

     rangeSelector : { 
      selected : 5 // All 
     }, 

     tooltip: { 
      xDateFormat: '%Y-%m-%d %H:%M:%S' 
     }, 

     xAxis : { 
      ordinal: true 
     }, 

     series : [{ 
      //type: 'candlestick', 
      name : 'data', 
      data : data, 
      dataGrouping : { 
       enabled : false 
      }, 
      marker: { 
       enabled: true, 
       radius: 2 
      } 
     }] 
    }); 

的样本数据绘制精细:

[1121212800000,38.35], 
[1121299200000,40.75], 
[1121385600000,41.55], 
[1121644800000,41.49], 
[1121731200000,43.19], 
[1121817600000,43.63], 
[1121904000000,43.29], 
[1121990400000,44.00], 
[1122249600000,43.81], 
[1122336000000,43.63], 
[1122422400000,43.99], 
[1122508800000,43.80], 
[1122595200000,42.65], 

我的数据的样本:

[1339736400000,1627.25], 
[1339650000000,1613.50], 
[1339563600000,1619.50], 
[1339477200000,1603.50], 
[1339390800000,1584.00], 
[1339131600000,1576.50], 
[1339045200000,1606.00], 
[1338958800000,1635.00], 
[1338526800000,1606.00], 
[1338440400000,1558.00], 
[1338354000000,1540.00], 
[1338267600000,1579.50], 
[1337922000000,1569.50], 
+0

xAxis {xaxis:{categories:{}}}出现错误 – 2012-07-06 15:23:23

+0

使用'$(function(){'或' $(document).ready(function(){ ' – 2012-07-06 15:29:24

+0

我做了这些调整(把东西撞在键盘上留下的东西)感谢提示数据perisists的问题然而。 – 2012-07-06 15:37:09

回答

1

这里是什么地方错了图表的阵列时间backwords去你开始与6月15日,然后14,13等

如果你使用reverse()你会得到一个数组看起来像这样

var data = [ [1337922000000,1569.50], [1338267600000,1579.50] , 
       [1338354000000,1540.00],[1338440400000,1558.00], 
       [1338526800000,1606.00], 
       [1338958800000,1635.00],[1339045200000,1606.00], 
       [1339131600000,1576.50],[1339390800000,1584.00], 
       [1339477200000,1603.50],[1339563600000,1619.50],] 

这会让你的图表正常工作jsFiddle