mirror of
https://github.com/elastic/kibana.git
synced 2025-04-23 09:19:04 -04:00
refactoring inject_zeros because the previous code was a mess
This commit is contained in:
parent
4f9684c2e9
commit
18d0ef995f
2 changed files with 30 additions and 31 deletions
|
@ -17,42 +17,31 @@ define(function (require) {
|
|||
* and injects zeros where needed.
|
||||
*/
|
||||
|
||||
function getDataArray(obj) {
|
||||
if (obj.rows) {
|
||||
return obj.rows;
|
||||
} else if (obj.columns) {
|
||||
return obj.columns;
|
||||
} else {
|
||||
return [obj];
|
||||
}
|
||||
}
|
||||
|
||||
return function (obj) {
|
||||
if (!_.isObject(obj) || !obj.rows && !obj.columns && !obj.series) {
|
||||
throw new TypeError('ZeroInjectionUtilService expects an object with a series, rows, or columns key');
|
||||
}
|
||||
|
||||
var keys = orderXValues(obj);
|
||||
var max;
|
||||
var zeroArray;
|
||||
var dataArray;
|
||||
var i;
|
||||
var j;
|
||||
var arr = getDataArray(obj);
|
||||
|
||||
if (!obj.series) {
|
||||
var arr = obj.rows ? obj.rows : obj.columns;
|
||||
max = arr.length;
|
||||
arr.forEach(function (object) {
|
||||
object.series.forEach(function (series) {
|
||||
var zeroArray = createZeroFilledArray(keys);
|
||||
|
||||
for (i = 0; i < max; i++) {
|
||||
var jMax = arr[i].series.length;
|
||||
|
||||
for (j = 0; j < jMax; j++) {
|
||||
zeroArray = createZeroFilledArray(keys);
|
||||
dataArray = arr[i].series[j].values;
|
||||
arr[i].series[j].values = zeroFillDataArray(zeroArray, dataArray);
|
||||
}
|
||||
}
|
||||
return obj;
|
||||
}
|
||||
|
||||
max = obj.series.length;
|
||||
|
||||
for (i = 0; i < max; i++) {
|
||||
zeroArray = createZeroFilledArray(keys);
|
||||
dataArray = obj.series[i].values;
|
||||
|
||||
obj.series[i].values = zeroFillDataArray(zeroArray, dataArray);
|
||||
}
|
||||
series.values = zeroFillDataArray(zeroArray, series.values);
|
||||
});
|
||||
});
|
||||
|
||||
return obj;
|
||||
};
|
||||
|
|
|
@ -16,7 +16,11 @@ define(function (require) {
|
|||
{
|
||||
label: '200',
|
||||
values: [
|
||||
{x: 'v1', y: 234}, {x: 'v2', y: 34}, {x: 'v3', y: 834}, {x: 'v4', y: 1234}, {x: 'v5', y: 4}
|
||||
{x: 'v1', y: 234},
|
||||
{x: 'v2', y: 34},
|
||||
{x: 'v3', y: 834},
|
||||
{x: 'v4', y: 1234},
|
||||
{x: 'v5', y: 4}
|
||||
]
|
||||
}
|
||||
]
|
||||
|
@ -27,13 +31,19 @@ define(function (require) {
|
|||
{
|
||||
label: '200',
|
||||
values: [
|
||||
{x: '1', y: 234}, {x: '2', y: 34}, {x: '3', y: 834}, {x: '4', y: 1234}, {x: '5', y: 4}
|
||||
{x: '1', y: 234},
|
||||
{x: '2', y: 34},
|
||||
{x: '3', y: 834},
|
||||
{x: '4', y: 1234},
|
||||
{x: '5', y: 4}
|
||||
]
|
||||
},
|
||||
{
|
||||
label: '404',
|
||||
values: [
|
||||
{x: '1', y: 1234}, {x: '3', y: 234}, {x: '5', y: 34}
|
||||
{x: '1', y: 1234},
|
||||
{x: '3', y: 234},
|
||||
{x: '5', y: 34}
|
||||
]
|
||||
},
|
||||
{
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue