diff --git a/packages/grafana-data/src/transformations/fieldReducer.test.ts b/packages/grafana-data/src/transformations/fieldReducer.test.ts index baa5d704911..120a416d81a 100644 --- a/packages/grafana-data/src/transformations/fieldReducer.test.ts +++ b/packages/grafana-data/src/transformations/fieldReducer.test.ts @@ -55,13 +55,14 @@ describe('Stats Calculators', () => { it('should calculate basic stats', () => { const stats = reduceField({ field: basicTable.fields[0], - reducers: [ReducerID.first, ReducerID.last, ReducerID.mean, ReducerID.count], + reducers: [ReducerID.first, ReducerID.last, ReducerID.mean, ReducerID.count, ReducerID.diffperc], }); expect(stats.first).toEqual(10); expect(stats.last).toEqual(20); expect(stats.mean).toEqual(15); expect(stats.count).toEqual(2); + expect(stats.diffperc).toEqual(100); }); it('should handle undefined field data without crashing', () => { diff --git a/packages/grafana-data/src/transformations/fieldReducer.ts b/packages/grafana-data/src/transformations/fieldReducer.ts index d0bd2e9a178..b69b08c00a2 100644 --- a/packages/grafana-data/src/transformations/fieldReducer.ts +++ b/packages/grafana-data/src/transformations/fieldReducer.ts @@ -573,7 +573,7 @@ export function doStandardCalcs(field: Field, ignoreNulls: boolean, nullAsZero: } if (isNumber(calcs.firstNotNull) && isNumber(calcs.diff)) { - calcs.diffperc = calcs.diff / calcs.firstNotNull; + calcs.diffperc = (calcs.diff / calcs.firstNotNull) * 100; } return calcs; }