2014-01-29 87 views
0

我有一个容器<div class="statsrep"></div>,我想显示我的图表/图形。我想用来自AJAX/JSON的数据填充图表的数据,但它似乎不起作用。图表给我这个(在类别/日期仔细看):使用来自AJAX/JSON的数据填充Highcharts系列

enter image description here

怎么可能是这个原因吗?

的AJAX/JSON的反应是:

{ 
    "dates": "'2014-01-06','2014-01-07','2014-01-08','2014-01-09','2014-01-12','2014-01-13','2014-01-14','2014-01-15','2014-01-16','2014-01-19','2014-01-20','2014-01-21','2014-01-22','2014-01-23','2014-01-26'", 
    "leadsTotal": "260,474,689,851,1104,1268,1439,1588,1726,2021,2216,2395,2587,2756,3002", 
    "leadQuote": "11,12,12,14,14,15,15,15,16,14,15,16,15,15,15", 
    "salesConv": "3,4,5,6,6,6,6,6,6,5,6,6,5,5,5", 
    "totalIMU": "15418.95,21875.09,32555.79,41962.11,53790.88,59817.54,64005.61,72176.84,74874.39,83949.47,98021.05,106736.84,109518.60,117886.32,124241.40", 
    "vpl": "59.30,46.15,47.25,49.31,48.72,47.17,44.48,45.45,43.38,41.54,44.23,44.57,42.33,42.77,41.39" 
} 

,这里是我的AJAX请求:

var date = $('#frankdate').val(); 
var aff = $('#affID').val(); 

$.ajax({ 
    type: 'post', 
    url: 'graphMerchantTotal.php', 
    dataType: "json", 
    data: { 
     merchant:"frank", 
     date: date, 
     aff: aff 
    }, 
    success:function(json){ 
     $('#statsrep').highcharts({ 
      title: { 
       text: 'Frank Daily Stats', 
       x: -20 //center 
      }, 
      subtitle: { 
       text: 'Overall Total', 
       x: -20 
      }, 
      xAxis: { 
       categories: json.dates 
      }, 
      yAxis: { 
       plotLines: [{ 
        value: 0, 
        width: 1, 
        color: '#808080' 
       }] 
      }, 
      tooltip: { 

      }, 
      legend: { 
       layout: 'horizontal', 
       align: 'center', 
       verticalAlign: 'bottom', 
       borderWidth: 0 
      }, 
      series: [{ 
       name: 'Leads', 
       data: json.leadsTotal 
      }, { 
       name: 'Lead to Quote (%)', 
       data: json.leadQuote 
      }, { 
       name: 'Sale Conversion (%)', 
       data: json.salesConv 
      }, { 
       name: 'Total After IMU', 
       data: json.totalIMU 
      }, { 
       name: 'VPL', 
       data: json.vpl 
      }] 
     }); 
    } 
}); 
+1

来自AJAX请求的响应文本应该返回一个字符串,所以您首先必须在javascript可以将其用作实际对象之前eval()该字符串。 – jbwebtech

回答

0

您需要使用数字数组中的系列,但在你的情况你只有字符串用逗号分隔。您需要使用split()函数并将其推入新数组,然后在高图中使用。

+0

谢谢,我已经使用split,然后将它们映射为数值。 – maikelsabido

+0

它是有道理的,祝你好运 –

相关问题