Я использую графическую библиотеку d3.js, и я использую радарную диаграмму extension, которая, кажется, только принимает объекты данных одним способом. Вместо того, чтобы пытаться изменить код для расширения, я подумал, что было бы проще просто манипулировать моими данными в том виде, который он закодирован для принятия. Если это имеет смысл?Как манипулировать объектами JSON в массив с javascript
Во всяком случае, это мой код;
Мой JSON:
{
"questions": ["Staff is courteous and polite","Attentive staff","Modern brand","Innovative brand","Good employer","Company I trust","Place for kids and family","Place for young people","Affordable food"],
"organizations": ["MC", "BK", "KFC"],
"dates": ["Jan", "Feb", "Mar"],
"values": [ [
[40, 15, 13],
[25, 24, 14],
[1, 23, 20]] ... etc etc
Javascript: Структура выхода
d3.json("data.json", function(error, data) {
var newValue =[];
var yellow = [
[
{"label":"A","value":6},
{"label":"B","value":4},
{"label":"C","value":6},
{"label":"D","value":5.5},
{"label":"E","value":8},
{"label":"F","value":7},
{"label":"G","value":9},
{"label":"H","value":10},
{"label":"I","value":3.5}
]
];
if (error) {
console.log(error);
}
else {
data = data;
}
var newValue = [];
var orgS = "MC";
var dateS = "Jan";
for (var question = 0; question < data.questions.length; question++) {
var organization = data.organizations.indexOf(orgS);
var date = data.dates.indexOf(dateS);
newValue.push({
label: data.questions[question],
value: data.values[question][organization][date]
});
}
console.log(newValue);
console.log(yellow);
});
консоль:
Так что мой вопрос, как я могу выходные мои данные на консоль как «желтый» (нижний на рис.)?
Я попытался обернуть [] вокруг newValue.push, но он не возвратил желаемого эффекта.
Я надеюсь, что это возможно, любые советы очень ценятся!
Вот plnk все готово -
https://plnkr.co/edit/EBcxa39sal0PAOJxSYKb?p=preview
(О - и я действительно не был уверен, что подходящее название для этого вопроса должно быть, пожалуйста приветствовать редактировать/предложить новый чтобы более точно описать проблему).
Не очень понятно, что соотношение первоначальных свойств 'организаций, дат, values' являются конечным результатом в лице' yellow'. Покажите пример реального ожидаемого результата – charlietfl
@charlietfl Я не совсем уверен, как ответить, между ними нет никаких предполагаемых отношений. Это именно тот метод, который у меня есть для фильтрации через мои данные, и я хотел бы попытаться выяснить способ вывода его так же, как желтый, как та структура, которая принимается плагином. В принципе, я пытаюсь сделать ярлык, если это поможет. – since095
Ну, не зная, как соответствовать значению и метке, что затрудняет нам знать, что делать. т.е. * «ожидаемые результаты» * – charlietfl