Google 可视化 - 发送二维数组,但不工作
Google Visualization - sending 2D array , but not working
使用 google 可视化绘制图表,如果我像这样发送硬编码在 JS 文件中的数据,如果工作得很好。
data.addRows([[100, 30],[200, 70],[246, 150],[512, 780]]);
我理解的很明显是2D JS数组。
但是,当我尝试动态发送它时,它不起作用。请检查此代码。
dataFromText = "100,30,200,70,246,150,512,780";
dataFromText = dataFromText.split(',');
while(dataFromText[0]) {
result.push(dataFromText.splice(0,2));
}
alert(result[1]); // this line prints 200,70
data.addRows([result]);
有人可以帮忙吗?
提前致谢!
result
已经是一个二维数组,额外的括号打破了它。尝试删除 result
周围的方括号
var dataFromText = "100,30,200,70,246,150,512,780";
var dataFromText = dataFromText.split(',');
var result=[];
while(dataFromText[0]) {
result.push(dataFromText.splice(0,2));
}
console.log(JSON.stringify(result)); // this line prints 2d array
data.addRows(result);
请试试这个:
在您共享的代码中,result 变量包含字符串而不是数字。
dataFromText = "100,30,200,70,246,150,512,780";
dataFromText = dataFromText.split(',').map(Number);//converting string to number
var result = [];
while(dataFromText[0]) {
result.push(dataFromText.splice(0,2));
}
console.log(result);
data.addRows(result);
使用 google 可视化绘制图表,如果我像这样发送硬编码在 JS 文件中的数据,如果工作得很好。
data.addRows([[100, 30],[200, 70],[246, 150],[512, 780]]);
我理解的很明显是2D JS数组。 但是,当我尝试动态发送它时,它不起作用。请检查此代码。
dataFromText = "100,30,200,70,246,150,512,780";
dataFromText = dataFromText.split(',');
while(dataFromText[0]) {
result.push(dataFromText.splice(0,2));
}
alert(result[1]); // this line prints 200,70
data.addRows([result]);
有人可以帮忙吗?
提前致谢!
result
已经是一个二维数组,额外的括号打破了它。尝试删除 result
var dataFromText = "100,30,200,70,246,150,512,780";
var dataFromText = dataFromText.split(',');
var result=[];
while(dataFromText[0]) {
result.push(dataFromText.splice(0,2));
}
console.log(JSON.stringify(result)); // this line prints 2d array
data.addRows(result);
请试试这个: 在您共享的代码中,result 变量包含字符串而不是数字。
dataFromText = "100,30,200,70,246,150,512,780";
dataFromText = dataFromText.split(',').map(Number);//converting string to number
var result = [];
while(dataFromText[0]) {
result.push(dataFromText.splice(0,2));
}
console.log(result);
data.addRows(result);