protected void computeAxisValues(float min,float max){
  int labelCount=mAxis.getLabelCount();
  double range=Math.abs(max - min);
  if (labelCount == 0 || range <= 0) {
    mAxis.mEntries=new float[]{};
    mAxis.mEntryCount=0;
    return;
  }
  double rawInterval=range / labelCount;
  double interval=Utils.roundToNextSignificant(rawInterval);
  if (mAxis.isGranularityEnabled()) {
    interval=Math.max(interval,mAxis.getGranularity());
  }
  double intervalMagnitude=Utils.roundToNextSignificant(Math.pow(10,(int)Math.log10(interval)));
  int intervalSigDigit=(int)(interval / intervalMagnitude);
  if (intervalSigDigit > 5) {
    interval=Math.floor(10 * intervalMagnitude);
  }
  boolean centeringEnabled=mAxis.isCenterAxisLabelsEnabled();
  int n=centeringEnabled ? 1 : 0;
  if (mAxis.isForceLabelsEnabled()) {
    float step=(float)range / (float)(labelCount - 1);
    mAxis.mEntryCount=labelCount;
    if (mAxis.mEntries.length < labelCount) {
      mAxis.mEntries=new float[labelCount];
    }
    float v=min;
    for (int i=0; i < labelCount; i++) {
      mAxis.mEntries[i]=v;
      v+=step;
    }
    n=labelCount;
  }
 else {
    double first=interval == 0.0 ? 0.0 : Math.ceil(min / interval) * interval;
    if (centeringEnabled) {
      first-=interval;
    }
    double last=interval == 0.0 ? 0.0 : Utils.nextUp(Math.floor(max / interval) * interval);
    double f;
    int i;
    if (interval != 0.0) {
      for (f=first; f <= last; f+=interval) {
        ++n;
      }
    }
    mAxis.mEntryCount=n;
    if (mAxis.mEntries.length < n) {
      mAxis.mEntries=new float[n];
    }
    for (f=first, i=0; i < n; f+=interval, ++i) {
      if (f == 0.0)       f=0.0;
      mAxis.mEntries[i]=(float)f;
    }
  }
  if (interval < 1) {
    mAxis.mDecimals=(int)Math.ceil(-Math.log10(interval));
  }
 else {
    mAxis.mDecimals=0;
  }
  if (centeringEnabled) {
    if (mAxis.mCenteredEntries.length < n) {
      mAxis.mCenteredEntries=new float[n];
    }
    float offset=(mAxis.mEntries[1] - mAxis.mEntries[0]) / 2f;
    for (int i=0; i < n; i++) {
      mAxis.mCenteredEntries[i]=mAxis.mEntries[i] + offset;
    }
  }
}

protected void computeAxisValues ( float min , float max ) { int labelCount = mAxis . getLabelCount ( ) ; double range = Math . abs ( max - min ) ; if ( labelCount == 0 || range <= 0 ) { mAxis . mEntries = new float [ ] { } ; mAxis . mEntryCount = 0 ; return ; } double rawInterval = range / labelCount ; double interval = Utils . roundToNextSignificant ( rawInterval ) ; if ( mAxis . isGranularityEnabled ( ) ) { interval = Math . max ( interval , mAxis . getGranularity ( ) ) ; } double intervalMagnitude = Utils . roundToNextSignificant ( Math . pow ( 10 , ( int ) Math . log10 ( interval ) ) ) ; int intervalSigDigit = ( int ) ( interval / intervalMagnitude ) ; if ( intervalSigDigit > 5 ) { interval = Math . floor ( 10 * intervalMagnitude ) ; } boolean centeringEnabled = mAxis . isCenterAxisLabelsEnabled ( ) ; int n = centeringEnabled ? 1 : 0 ; if ( mAxis . isForceLabelsEnabled ( ) ) { float step = ( float ) range / ( float ) ( labelCount - 1 ) ; mAxis . mEntryCount = labelCount ; if ( mAxis . mEntries . length < labelCount ) { mAxis . mEntries = new float [ labelCount ] ; } float v = min ; for ( int i = 0 ; i < labelCount ; i ++ ) { mAxis . mEntries [ i ] = v ; v += step ; } n = labelCount ; } else { double first = interval == 0.0 ? 0.0 : Math . ceil ( min / interval ) * interval ; if ( centeringEnabled ) { first -= interval ; } double last = interval == 0.0 ? 0.0 : Utils . nextUp ( Math . floor ( max / interval ) * interval ) ; double f ; int i ; if ( interval != 0.0 ) { for ( f = first ; f <= last ; f += interval ) { ++ n ; } } mAxis . mEntryCount = n ; if ( mAxis . mEntries . length < n ) { mAxis . mEntries = new float [ n ] ; } for ( f = first , i = 0 ; i < n ; f += interval , ++ i ) { if ( f == 0.0 ) f = 0.0 ; mAxis . mEntries [ i ] = ( float ) f ; } } if ( interval < 1 ) { mAxis . mDecimals = ( int ) Math . ceil ( - Math . log10 ( interval ) ) ; } else { mAxis . mDecimals = 0 ; } if ( centeringEnabled ) { if ( mAxis . mCenteredEntries . length < n ) { mAxis . mCenteredEntries = new float [ n ] ; } float offset = ( mAxis . mEntries [ 1 ] - mAxis . mEntries [ 0 ] ) / 2f ; for ( int i = 0 ; i < n ; i ++ ) { mAxis . mCenteredEntries [ i ] = mAxis . mEntries [ i ] + offset ; } } }
sets up the axis values . computes the desired number of labels between the two given extremes .
