mirror of
https://github.com/apache/superset.git
synced 2026-04-23 10:04:45 +00:00
feat(timeseries-chart): add percentage threshold input control (#17758)
* feat(timeseries-chart): add percentage threshold control for stack series labels * feat: move threshold vlues to an array * add tests for showValue, onlyTotal, and percentThreshold * feat: add another test * revert ChartProps typesetting, fix misnamed variable on form data type, and other minor changes * fix percentage threshold push equation * fix percentage threshold push equation in tests * change default on control to match form * attempt fix form defaults import Co-authored-by: Corbin Robb <corbin@Corbins-MacBook-Pro.local>
This commit is contained in:
@@ -81,6 +81,7 @@ export function transformSeries(
|
||||
formatter?: NumberFormatter;
|
||||
totalStackedValues?: number[];
|
||||
showValueIndexes?: number[];
|
||||
thresholdValues?: number[];
|
||||
richTooltip?: boolean;
|
||||
},
|
||||
): SeriesOption | undefined {
|
||||
@@ -100,6 +101,7 @@ export function transformSeries(
|
||||
formatter,
|
||||
totalStackedValues = [],
|
||||
showValueIndexes = [],
|
||||
thresholdValues = [],
|
||||
richTooltip,
|
||||
} = opts;
|
||||
const contexts = seriesContexts[name || ''] || [];
|
||||
@@ -211,8 +213,12 @@ export function transformSeries(
|
||||
} = params;
|
||||
const isSelectedLegend = currentSeries.legend === seriesName;
|
||||
if (!formatter) return numericValue;
|
||||
if (!stack || !onlyTotal || isSelectedLegend) {
|
||||
return formatter(numericValue);
|
||||
if (!stack || isSelectedLegend) return formatter(numericValue);
|
||||
if (!onlyTotal) {
|
||||
if (numericValue >= thresholdValues[dataIndex]) {
|
||||
return formatter(numericValue);
|
||||
}
|
||||
return '';
|
||||
}
|
||||
if (seriesIndex === showValueIndexes[dataIndex]) {
|
||||
return formatter(totalStackedValues[dataIndex]);
|
||||
|
||||
Reference in New Issue
Block a user