diff --git a/superset-frontend/plugins/plugin-chart-echarts/src/Timeseries/transformProps.ts b/superset-frontend/plugins/plugin-chart-echarts/src/Timeseries/transformProps.ts index d44ae9358048..c85dc8db003b 100644 --- a/superset-frontend/plugins/plugin-chart-echarts/src/Timeseries/transformProps.ts +++ b/superset-frontend/plugins/plugin-chart-echarts/src/Timeseries/transformProps.ts @@ -20,9 +20,13 @@ import { invert } from 'lodash'; import { AnnotationLayer, + AxisType, + buildCustomFormatters, CategoricalColorNamespace, + CurrencyFormatter, ensureIsArray, GenericDataType, + getCustomFormatter, getMetricLabel, getNumberFormatter, getXAxisLabel, @@ -34,9 +38,6 @@ import { isTimeseriesAnnotationLayer, t, TimeseriesChartDataResponseResult, - buildCustomFormatters, - getCustomFormatter, - CurrencyFormatter, } from '@superset-ui/core'; import { extractExtraMetrics, @@ -48,8 +49,8 @@ import { ZRLineType } from 'echarts/types/src/util/types'; import { EchartsTimeseriesChartProps, EchartsTimeseriesFormData, - TimeseriesChartTransformedProps, OrientationType, + TimeseriesChartTransformedProps, } from './types'; import { DEFAULT_FORM_DATA } from './constants'; import { ForecastSeriesEnum, ForecastValue, Refs } from '../types'; @@ -88,8 +89,8 @@ import { } from './transformers'; import { StackControlsValue, - TIMESERIES_CONSTANTS, TIMEGRAIN_TO_TIMESTAMP, + TIMESERIES_CONSTANTS, } from '../constants'; import { getDefaultTooltip } from '../utils/tooltip'; import { @@ -448,13 +449,13 @@ export default function transformProps( rotate: xAxisLabelRotation, }, minInterval: - xAxisType === 'time' && timeGrainSqla + xAxisType === AxisType.time && timeGrainSqla ? TIMEGRAIN_TO_TIMESTAMP[timeGrainSqla] : 0, }; let yAxis: any = { ...defaultYAxis, - type: logAxis ? 'log' : 'value', + type: logAxis ? AxisType.log : AxisType.value, min, max, minorTick: { show: true }, diff --git a/superset-frontend/plugins/plugin-chart-echarts/src/utils/series.ts b/superset-frontend/plugins/plugin-chart-echarts/src/utils/series.ts index 663548f25d71..bd4e329d0b72 100644 --- a/superset-frontend/plugins/plugin-chart-echarts/src/utils/series.ts +++ b/superset-frontend/plugins/plugin-chart-echarts/src/utils/series.ts @@ -25,12 +25,12 @@ import { DTTM_ALIAS, ensureIsArray, GenericDataType, + LegendState, + normalizeTimestamp, NumberFormats, NumberFormatter, - TimeFormatter, SupersetTheme, - normalizeTimestamp, - LegendState, + TimeFormatter, ValueFormatter, } from '@superset-ui/core'; import { SortSeriesType } from '@superset-ui/chart-controls'; @@ -512,6 +512,9 @@ export function getAxisType(dataType?: GenericDataType): AxisType { if (dataType === GenericDataType.TEMPORAL) { return AxisType.time; } + if (dataType === GenericDataType.NUMERIC) { + return AxisType.value; + } return AxisType.category; } diff --git a/superset-frontend/plugins/plugin-chart-echarts/test/utils/series.test.ts b/superset-frontend/plugins/plugin-chart-echarts/test/utils/series.test.ts index 75faee93e59c..927ee49e8cc7 100644 --- a/superset-frontend/plugins/plugin-chart-echarts/test/utils/series.test.ts +++ b/superset-frontend/plugins/plugin-chart-echarts/test/utils/series.test.ts @@ -18,6 +18,7 @@ */ import { SortSeriesType } from '@superset-ui/chart-controls'; import { + AxisType, DataRecord, GenericDataType, getNumberFormatter, @@ -31,6 +32,7 @@ import { extractSeries, extractShowValueIndexes, formatSeriesName, + getAxisType, getChartPadding, getLegendProps, getOverMaxHiddenFormatter, @@ -870,3 +872,10 @@ test('calculateLowerLogTick', () => { expect(calculateLowerLogTick(2)).toEqual(1); expect(calculateLowerLogTick(0.005)).toEqual(0.001); }); + +test('getAxisType', () => { + expect(getAxisType(GenericDataType.TEMPORAL)).toEqual(AxisType.time); + expect(getAxisType(GenericDataType.NUMERIC)).toEqual(AxisType.value); + expect(getAxisType(GenericDataType.BOOLEAN)).toEqual(AxisType.category); + expect(getAxisType(GenericDataType.STRING)).toEqual(AxisType.category); +});