@Override public AxisState draw(Graphics2D g2,double cursor,Rectangle2D plotArea,Rectangle2D dataArea,RectangleEdge edge,PlotRenderingInfo plotState){
  AxisState axisState=new AxisState(cursor);
  if (isAxisLineVisible()) {
    drawAxisLine(g2,cursor,dataArea,edge);
  }
  if (isTickMarksVisible()) {
    drawTickMarks(g2,axisState,dataArea,edge);
  }
  if (isTickLabelsVisible()) {
    for (int band=0; band < this.labelInfo.length; band++) {
      axisState=drawTickLabels(band,g2,axisState,dataArea,edge);
    }
  }
  if (getAttributedLabel() != null) {
    axisState=drawAttributedLabel(getAttributedLabel(),g2,plotArea,dataArea,edge,axisState);
  }
 else {
    axisState=drawLabel(getLabel(),g2,plotArea,dataArea,edge,axisState);
  }
  return axisState;
}

@ Override public AxisState draw ( Graphics2D g2 , double cursor , Rectangle2D plotArea , Rectangle2D dataArea , RectangleEdge edge , PlotRenderingInfo plotState ) { AxisState axisState = new AxisState ( cursor ) ; if ( isAxisLineVisible ( ) ) { drawAxisLine ( g2 , cursor , dataArea , edge ) ; } if ( isTickMarksVisible ( ) ) { drawTickMarks ( g2 , axisState , dataArea , edge ) ; } if ( isTickLabelsVisible ( ) ) { for ( int band = 0 ; band < this . labelInfo . length ; band ++ ) { axisState = drawTickLabels ( band , g2 , axisState , dataArea , edge ) ; } } if ( getAttributedLabel ( ) != null ) { axisState = drawAttributedLabel ( getAttributedLabel ( ) , g2 , plotArea , dataArea , edge , axisState ) ; } else { axisState = drawLabel ( getLabel ( ) , g2 , plotArea , dataArea , edge , axisState ) ; } return axisState ; }
draws the axis on a java 2d graphics device ( such as the screen or a printer ) .
