From 62889e875530ee74a252c765bf2b4da68b7351b9 Mon Sep 17 00:00:00 2001 From: Piotr Rogowski Date: Mon, 20 Dec 2021 23:47:21 +0100 Subject: [PATCH] Fix invalid Time data, format values --- src/components/Log/LogCanvas.tsx | 29 +++++++++++++++++------------ 1 file changed, 17 insertions(+), 12 deletions(-) diff --git a/src/components/Log/LogCanvas.tsx b/src/components/Log/LogCanvas.tsx index 4f54dfa..3ee5633 100644 --- a/src/components/Log/LogCanvas.tsx +++ b/src/components/Log/LogCanvas.tsx @@ -10,7 +10,10 @@ import { } from 'antd'; import UplotReact from 'uplot-react'; import uPlot from 'uplot'; -import { colorHsl } from '../../utils/number'; +import { + colorHsl, + formatNumber, +} from '../../utils/number'; import LandscapeNotice from '../Dialog/LandscapeNotice'; import { Colors } from '../../utils/colors'; import touchZoomPlugin from '../../utils/uPlot/touchZoomPlugin'; @@ -62,8 +65,6 @@ const LogCanvas = ({ data, width, height, selectedFields1, selectedFields2 }: Pr data.forEach((entry) => { selectedFields.forEach(({ label, scale, transform, units, format }) => { - const value = entry[label]; - if (!temp[label]) { temp[label] = { min: 0, @@ -75,13 +76,14 @@ const LogCanvas = ({ data, width, height, selectedFields1, selectedFields2 }: Pr }; } - if (value > temp[label].max) { - temp[label].max = entry[label] as number; - } + // const value = entry[label]; + // if (value > temp[label].max) { + // temp[label].max = entry[label] as number; + // } - if (value < temp[label].min) { - temp[label].min = entry[label] as number; - } + // if (value < temp[label].min) { + // temp[label].min = entry[label] as number; + // } }); }); @@ -102,15 +104,18 @@ const LogCanvas = ({ data, width, height, selectedFields1, selectedFields2 }: Pr stroke: hsl(index, selectedFieldsLength), scale: field.units, width: 2, - value: (_self, val) => isNumber(val) ? val.toFixed(2) : 0, + value: (_self, val) => isNumber(val) ? formatNumber(val, field.format) : 0, }); data.forEach((entry) => { + // TODO: add type in MlgConverter if (entry.type === 'field') { - xData.push(entry.Time as number); + // we only need to collect Time data once + if (index === 0) { + xData.push(entry.Time as number); + } let value = entry[label]; - if (value !== undefined) { value = (value as number * field.scale) + field.transform; }