Моя диаграмма еще не работает, но это не важно, поскольку я собираюсь по одному элементу за раз. Как писал в мой последний вопрос, вот данные я работаю с:Как установить домен X для вложенного значения
{
"chartData":[
{
"vId":307,
"vNm":"Alejandro Rivera Ulloa",
"values":[
{"period":"2015-01","amount":37,"id":132},
{"period":"2015-02","amount":38,"id":133},
{"period":"2015-03","amount":33,"id":134}
]
},
{
"vId":308,
"vNm": "Daniel Torres",
"values": [
{"period":"2015-01","amount":41,"id":135},
{"period":"2015-02","amount":41,"id":136},
{"period":"2015-03","amount":41,"id":137}
]
},
{
"vId":309,
"vNm": "Pablo Alvarez Garcia",
"values":[
{"period":"2015-01","amount":16,"id":138},
{"period":"2015-02","amount":17,"id":139},
{"period":"2015-03","amount":14,"id":140}
]
},
{
"vId":391,
"vNm":"Janette Avalos de Conte",
"values":[
{"period":"2015-01","amount":28.5,"id":141},
{"period":"2015-02","amount":29,"id":142},
{"period":"2015-03","amount":27.5,"id":143}
]
}
]
}
Все нормально там, и мой код загружает данные просто отлично. Это Еогеасп, что позволяет мне получить все и везде (проще говоря):
data.chartData.forEach(function(kv){
var vNmName = kv.vNm;
var vIdName = kv.vId;
kv.values.forEach(function(d){
d.period = d.period;
d.id = d.id;
d.amount = +d.amount;
d.vNm = vNmName;
d.vId = vIdName;
});
});
Итак, вот что мне нужно. Мой домен X отображается неправильно, и я знаю почему. Это строка кода:
x.domain(data.chartData[0].values.map(function(d) { return d.period; }));
И эта линия дает мне только те периоды, именно то, что он должен делать, как только обращается к первому элементу chartData. Вот JSFiddle со всеми код: Fiddle
Итак, для домена x, который будет отображаться правильно, что должно быть другим - я не понимаю проблему. –
Проблема в том, что мне нужно ВСЕ показанные периоды, а не только три из первого элемента. @SamH. –
все периоды одинаковы - как вы можете сказать, что они не получают все из них? –