in src/UXClient/Components/LineChart/LineChart.ts [401:443]
private getYExtent (aggValues, isEnvelope, aggKey = null) {
let extent;
if (aggKey !== null && (this.chartComponentData.displayState[aggKey].yExtent !== null)) {
return this.chartComponentData.displayState[aggKey].yExtent;
}
if (this.chartOptions.yExtent !== null) {
return this.chartOptions.yExtent;
}
if (isEnvelope) {
var filteredValues = this.getFilteredValues(aggValues);
var flatValuesList = [];
filteredValues.forEach((d: any) => {
if (this.chartComponentData.isPossibleEnvelope(d.aggregateKey, d.splitBy)) {
if (d.measures['min'] != undefined && d.measures['min'] != null) {
flatValuesList.push(d.measures['min']);
}
if (d.measures['avg'] != undefined && d.measures['avg'] != null) {
flatValuesList.push(d.measures['avg']);
}
if (d.measures['max'] != undefined && d.measures['max'] != null) {
flatValuesList.push(d.measures['max']);
}
} else {
var visibleMeasure = this.chartComponentData.getVisibleMeasure(d.aggregateKey, d.splitBy);
if (d.measures[visibleMeasure] != undefined && d.measures[visibleMeasure] != null) {
flatValuesList.push(d.measures[visibleMeasure]);
}
}
});
extent = d3.extent(flatValuesList);
} else {
extent = d3.extent(this.getFilteredValues(aggValues), (d: any) => {
var visibleMeasure = this.chartComponentData.getVisibleMeasure(d.aggregateKey, d.splitBy);
if (d.measures[visibleMeasure] != undefined && d.measures[visibleMeasure] != null) {
return d.measures[visibleMeasure];
}
return null;
});
}
if (extent[0] == undefined || extent[1] == undefined)
return [0,1]
return extent;
}