我正在尝试从Flurry访问JSON,以绘制那里的信息。但是,当我尝试运行图形时,我在发送数组的空间中收到了Data column(s) for axis #0 cannot be of type string警报。以下是我的代码:
google.charts.load('current', {packages: ['corechart', 'bar']});
google.charts.setOnLoadCallback(fillData);
function fillData() {
var dataArray = [];
var tempArray = ['@name', '@totalCount'];
dataArray.push(tempArray);
var xmlhttp = new XMLHttpRequest();
xmlhttp.open('GET', '//flurry address', true);
xmlhttp.onreadystatechange = function() {
if (xmlhttp.readyState == 4) {
if(xmlhttp.status == 200) {
var obj = JSON.parse(xmlhttp.responseText);
for (i = 0;i < obj.parameters.key[0].value[i]["@name"]; i++)
{
dataArray.push([obj.parameters.key[0].value[i]["@name"], obj.parameters.key[0].value[i]["@totalCount"]]);
alert(dataArray[i]);
}
}
}
};
//xmlhttp.send(null);
drawBasic(dataArray);
}
function drawBasic(dataarray) {
var data = google.visualization.arrayToDataTable(dataarray);
var options = {
title: 'Login Counts',
chartArea: {width: '50%'},
hAxis: {
title: 'Login Count',
minValue: 0
},
vAxis: {
title: 'Company'
}
};
var chart = new google.visualization.BarChart(document.getElementById('chart_div'));
chart.draw(data, options);
}发布于 2016-10-28 15:18:07
尝试如下所示的代码:
https://jsfiddle.net/9j5x97r7/2/
jsfiddle不能工作,因为我不能加载API,而且我没有时间。但是如果你让它加载,它就能工作(在你的代码中试试)。
第一行与您创建的不同。for错误
您需要解析数字,因为在响应中是一个字符串。
如果对你有帮助,请告诉我
https://stackoverflow.com/questions/40288682
复制相似问题