diff --git a/packages/grafana-ui/src/components/TimeSeries/utils.ts b/packages/grafana-ui/src/components/TimeSeries/utils.ts index 37914e6097b..9f5b4fd59e3 100644 --- a/packages/grafana-ui/src/components/TimeSeries/utils.ts +++ b/packages/grafana-ui/src/components/TimeSeries/utils.ts @@ -276,6 +276,7 @@ export const preparePlotConfigBuilder: UPlotConfigPrepFn<{ theme, grid: { show: customConfig.axisGridShow }, decimals: field.config.decimals, + distr: customConfig.scaleDistribution?.type, ...axisColorOpts, }, field diff --git a/packages/grafana-ui/src/components/uPlot/config/UPlotAxisBuilder.ts b/packages/grafana-ui/src/components/uPlot/config/UPlotAxisBuilder.ts index f890413f345..5f894fa9a86 100644 --- a/packages/grafana-ui/src/components/uPlot/config/UPlotAxisBuilder.ts +++ b/packages/grafana-ui/src/components/uPlot/config/UPlotAxisBuilder.ts @@ -10,7 +10,7 @@ import { systemDateFormats, TimeZone, } from '@grafana/data'; -import { AxisPlacement } from '@grafana/schema'; +import { AxisPlacement, ScaleDistribution } from '@grafana/schema'; import { measureText } from '../../../utils/measureText'; import { PlotConfigBuilder } from '../types'; @@ -39,6 +39,7 @@ export interface AxisProps { color?: uPlot.Axis.Stroke; border?: uPlot.Axis.Border; decimals?: DecimalCount; + distr?: ScaleDistribution; } export const UPLOT_AXIS_FONT_SIZE = 12; @@ -121,6 +122,7 @@ export class UPlotAxisBuilder extends PlotConfigBuilder { color, border, decimals, + distr = ScaleDistribution.Linear, } = this.props; const font = `${UPLOT_AXIS_FONT_SIZE}px ${theme.typography.fontFamily}`; @@ -131,7 +133,7 @@ export class UPlotAxisBuilder extends PlotConfigBuilder { splits = [0, 1]; } - if (decimals === 0) { + if (decimals === 0 && distr === ScaleDistribution.Linear) { filter = (u, splits) => splits.map((v) => (Number.isInteger(v) ? v : null)); }