fix(dashboard): Cross filters with time shifted series (#23347)

This commit is contained in:
Kamil Gabryjelski
2023-03-13 14:32:49 +01:00
committed by GitHub
parent a591130e0b
commit 78ee60e227
3 changed files with 46 additions and 1 deletions

View File

@@ -107,8 +107,9 @@ export default function transformProps(
} = chartProps;
const { verboseMap = {} } = datasource;
const [queryData] = queriesData;
const { data = [], label_map: labelMap } =
const { data = [], label_map = {} } =
queryData as TimeseriesChartDataResponseResult;
const dataTypes = getColtypesMapping(queryData);
const annotationData = getAnnotationData(chartProps);
@@ -136,6 +137,7 @@ export default function transformProps(
showValue,
sliceId,
timeGrainSqla,
timeCompare,
stack,
tooltipTimeFormat,
tooltipSortByMetric,
@@ -154,6 +156,17 @@ export default function transformProps(
}: EchartsTimeseriesFormData = { ...DEFAULT_FORM_DATA, ...formData };
const refs: Refs = {};
const labelMap = Object.entries(label_map).reduce((acc, entry) => {
if (
entry[1].length > groupby.length &&
Array.isArray(timeCompare) &&
timeCompare.includes(entry[1][0])
) {
entry[1].shift();
}
return { ...acc, [entry[0]]: entry[1] };
}, {});
const colorScale = CategoricalColorNamespace.getScale(colorScheme as string);
const rebasedData = rebaseForecastDatum(data, verboseMap);
let xAxisLabel = getXAxisLabel(chartProps.rawFormData) as string;

View File

@@ -71,6 +71,7 @@ export type EchartsTimeseriesFormData = QueryFormData & {
rowLimit: number;
seriesType: EchartsTimeseriesSeriesType;
stack: StackType;
timeCompare?: string[];
tooltipTimeFormat?: string;
truncateYAxis: boolean;
yAxisFormat?: string;