Fix CFD chart (stack wrongly ordered)

This commit is contained in:
Frederic Guillot
2017-02-11 19:42:17 -05:00
parent 2c45096411
commit c5caff7ef7
9 changed files with 53 additions and 46 deletions

File diff suppressed because one or more lines are too long

View File

@@ -8,25 +8,24 @@ KB.component('chart-project-burndown', function (containerElement, options) {
var outputFormat = d3.time.format(options.dateFormat);
for (var i = 0; i < metrics.length; i++) {
for (var j = 0; j < metrics[i].length; j++) {
var currentValue = metrics[i][j];
if (i === 0) {
columns.push([metrics[i][j]]);
} else {
columns[j + 1].push(metrics[i][j]);
if (j > 0) {
columns.push([currentValue]);
}
} else {
if (j > 0) {
columns[j].push(currentValue);
if (columns[0][i] === undefined) {
if (typeof columns[0][i] === 'undefined') {
columns[0].push(0);
}
columns[0][i] += metrics[i][j];
}
if (j === 0) {
categories.push(outputFormat(inputFormat.parse(metrics[i][j])));
columns[0][i] += currentValue;
} else {
categories.push(outputFormat(inputFormat.parse(currentValue)));
}
}
}

View File

@@ -9,21 +9,19 @@ KB.component('chart-project-cumulative-flow', function (containerElement, option
var outputFormat = d3.time.format(options.dateFormat);
for (var i = 0; i < metrics.length; i++) {
for (var j = 0; j < metrics[i].length; j++) {
var currentValue = metrics[i][j];
if (i === 0) {
columns.push([metrics[i][j]]);
if (j > 0) {
groups.push(metrics[i][j]);
groups.push(currentValue);
columns.push([currentValue]);
}
} else {
columns[j].push(metrics[i][j]);
if (j === 0) {
categories.push(outputFormat(inputFormat.parse(metrics[i][j])));
if (j > 0) {
columns[j - 1].push(currentValue);
} else {
categories.push(outputFormat(inputFormat.parse(currentValue)));
}
}
}
@@ -33,9 +31,14 @@ KB.component('chart-project-cumulative-flow', function (containerElement, option
c3.generate({
data: {
columns: columns,
// Example: [["Column1", 1, 2, 3], ["Column2", 1, 2, 3]]
// Note: values are reversed to make sure the columns are stacked in the right order
columns: columns.reverse(),
type: 'area-spline',
groups: [groups]
groups: [groups],
// Note: Use specified order otherwise C3js reorder series
order: null
},
axis: {
x: {