lib/ui/charting/js_charting.js
function(options, extremes) {
            // if there are no extremes (i.e. no meaningful data was extracted), go with 0 to 100
            if(!extremes.min && !extremes.max) {
                options.min = 0;
                options.max = 100;
                return;
            }
            // if the min or max is such that no data makes it onto the chart, we hard-code some reasonable extremes
            if(extremes.min > extremes.dataMax && extremes.min > 0 && this.userMax === Infinity) {
                options.max = (this.logScale) ? extremes.min + 2 : extremes.min * 2;
                return;
            }
            if(extremes.max < extremes.dataMin && extremes.max < 0 && this.userMin === -Infinity) {
                options.min = (this.logScale) ? extremes.max - 2 : extremes.max * 2;
                return;
            }
            // if either data extreme is exactly zero, remove the padding on that side so the axis doesn't extend beyond zero
            if(extremes.dataMin === 0 && this.userMin === -Infinity) {
                options.min = 0;
                options.minPadding = 0;
            }
            if(extremes.dataMax === 0 && this.userMax === Infinity) {
                options.max = 0;
                options.maxPadding = 0;
            }
        }
function(options, extremes) {
            // if there are no extremes (i.e. no meaningful data was extracted), go with 0 to 100
            if(!extremes.min && !extremes.max) {
                options.min = 0;
                options.max = 100;
                return;
            }
            // if the min or max is such that no data makes it onto the chart, we hard-code some reasonable extremes
            if(extremes.min > extremes.dataMax && extremes.min > 0 && this.userMax === Infinity) {
                options.max = (this.logScale) ? extremes.min + 2 : extremes.min * 2;
                return;
            }
            if(extremes.max < extremes.dataMin && extremes.max < 0 && this.userMin === -Infinity) {
                options.min = (this.logScale) ? extremes.max - 2 : extremes.max * 2;
                return;
            }
            // if either data extreme is exactly zero, remove the padding on that side so the axis doesn't extend beyond zero
            if(extremes.dataMin === 0 && this.userMin === -Infinity) {
                options.min = 0;
                options.minPadding = 0;
            }
            if(extremes.dataMax === 0 && this.userMax === Infinity) {
                options.max = 0;
                options.maxPadding = 0;
            }
        }
function ( options , extremes ) { // if there are no extremes (i.e. no meaningful data was extracted), go with 0 to 100 if ( ! extremes . min && ! extremes . max ) { options . min = 0 ; options . max = 100 ; return ; } // if the min or max is such that no data makes it onto the chart, we hard-code some reasonable extremes if ( extremes . min > extremes . dataMax && extremes . min > 0 && this . userMax === Infinity ) { options . max = ( this . logScale ) ? extremes . min + 2 : extremes . min * 2 ; return ; } if ( extremes . max < extremes . dataMin && extremes . max < 0 && this . userMin === - Infinity ) { options . min = ( this . logScale ) ? extremes . max - 2 : extremes . max * 2 ; return ; } // if either data extreme is exactly zero, remove the padding on that side so the axis doesn't extend beyond zero if ( extremes . dataMin === 0 && this . userMin === - Infinity ) { options . min = 0 ; options . minPadding = 0 ; } if ( extremes . dataMax === 0 && this . userMax === Infinity ) { options . max = 0 ; options . maxPadding = 0 ; } }
clean up various issues that can arise from the axis extremes
clean up various issues that can arise from the axis extremes