in src/converter/data/dataConverter.ts [425:484]
private postProcessData(dataRepresentation: IDataRepresentation, settings: Settings): void {
dataRepresentation.staleDateDifference = 0;
dataRepresentation.series.forEach((series: IDataRepresentationSeries) => {
if (series.current && series.current.x) {
series.staleDateDifference = this.getDaysBetween(series.current.x, new Date());
if (series.staleDateDifference > dataRepresentation.staleDateDifference) {
dataRepresentation.staleDateDifference = series.staleDateDifference;
}
}
series.x.initialMin = series.x.min;
series.x.initialMax = series.x.max;
series.y.initialMin = series.y.min;
series.y.initialMax = series.y.max;
series.ySparkline.initialMin = series.y.min;
series.ySparkline.initialMax = series.y.max;
series.x.scale.domain(
[series.x.min, series.x.max],
DataRepresentationTypeEnum.DateType,
);
this.applyScale(series.y, series.settings.yAxis);
if (series.settings.sparklineYAxis.shouldInheritValues) {
series.settings.sparklineYAxis.defaultMin = series.settings.yAxis.getMin();
series.settings.sparklineYAxis.defaultMax = series.settings.yAxis.getMax();
}
this.applyScale(series.ySparkline, series.settings.sparklineYAxis);
const startDataPoint: IDataRepresentationPoint = this.findClosestDataPointByDate(
series.points,
dataRepresentation.percentCalcDate,
series.points[0],
);
const endDataPoint: IDataRepresentationPoint = series.points[series.points.length - 1];
series.variance = createVarianceConverterByType(series.settings.variance.shouldCalculateDifference)
.convert({
firstDataPoint: startDataPoint,
secondDataPoint: endDataPoint,
});
series.formattedDate = getFormattedDate(startDataPoint.x, settings.date.getFormat());
series.formattedVariance = getFormattedValueWithFallback(series.variance, series.settings.variance);
series.dateDifference = this.getDaysBetween(endDataPoint.x, startDataPoint.x);
series.formattedTooltip = this.getFormattedTooltip(series);
series.smoothedPoints = series.settings.sparklineChart.shouldInterpolate
? this.smoothConverter.convert(series.points)
: series.points;
});
}