В настоящее время я пытаюсь создать отчет с помощью графиков Google.Loop Многомерный массив для генерации многомерного массива для графиков Google
Я потянув информацию из БД MYSQL в моей node.js стороне сервера кода и использования Socket.io, чтобы передать его на стороне клиента в многомерный массив, который выглядит следующим образом:
[ [ 'ANSWERED', '477', 728 ],[ 'BUSY', '477', 48 ],[ 'NO ANSWER', '477', 277 ],[ 'ANSWERED', '478', 88 ],[ 'BUSY', '478', 24 ],[ 'NO ANSWER', '478', 56 ] ]
Так Я в настоящее время цикл по этому массиву и пытается вытащить значения, так что в следующем формате для Google Charts:
[ ['477', 728, 48, 277 ],[ '478',88, 24, 56]]
Я не могу получить его в этот формат, и я изо всех сил, чтобы найти способы, чтобы сделать это, так затем я могу вставить эту информацию в мой мультидименси onal для таблиц Google и создать отчет.
Текущий код, который я до сих пор:
socket.on("SQL", function (valueArr) {
google.charts.load('current', {
packages : ['corechart']
});
google.charts.setOnLoadCallback(drawMaterial);
function drawMaterial() {
var data = [];
var Header = ['Call Disposition', 'Answered'];
data.push(Header);
for (i in valueArr) {
var index = 0;
var foundIndex = false;
var agent = valueArr[i][1];
var callcount = valueArr[i][2];
for (var i in data) {
var dataElem = data[i];
if (dataElem[0] === agent) {
index = i;
foundIndex = true;
data[index][i] = callcount;
}
}
if (foundIndex === false) {
var chanar = new Array(agent);
data.push(chanar);
}
}
console.log(data);
var options = {
title : 'Call Disposition',
hAxis : {
title : 'Agents',
minValue : 0,
},
vAxis : {
title : 'Disposition Number'
},
isStacked : true
};
var chartdata = new google.visualization.arrayToDataTable(data);
var material = new google.visualization.ColumnChart(document.getElementById('chart'));
material.draw(chartdata, options);
}
});
который выводит следующий многомерный массив:
[['Call Disposition', 'Answered'],['477',277 ]]
Идея мне нужно массив многомерных данных в конечном итоге выглядеть (заголовок Примечание может быть изменен в коде, только из-за текущего количества значений, с которыми он работает, для его создания):
ли формат массива должен быть как то, что вы положили в данных, расположение у меня есть '[[ 'ОТВЕТИЛ', '477', 728], [ 'BUSY' , '477', 48], ['NO ANSWER', '477', 277], ['ANSWERED', '478', 88], ['BUSY', '478', 24], ['NO ANSWER' , '478', 56]] 'как бы вы сделали это в этом формате? Поскольку они не являются отдельными массивами MD? Я опубликовал массив неправильно в начальном вопросе – Studento919
Спасибо, что это отличное решение. – Studento919