protected void drawHorizontalItem(Graphics2D g2,CategoryItemRendererState state,Rectangle2D dataArea,CategoryPlot plot,CategoryAxis domainAxis,ValueAxis rangeAxis,StatisticalCategoryDataset dataset,int visibleRow,int row,int column){
  double rectY=calculateBarW0(plot,PlotOrientation.HORIZONTAL,dataArea,domainAxis,state,visibleRow,column);
  Number meanValue=dataset.getMeanValue(row,column);
  if (meanValue == null) {
    return;
  }
  double value=meanValue.doubleValue();
  double base=0.0;
  double lclip=getLowerClip();
  double uclip=getUpperClip();
  if (uclip <= 0.0) {
    if (value >= uclip) {
      return;
    }
    base=uclip;
    if (value <= lclip) {
      value=lclip;
    }
  }
 else   if (lclip <= 0.0) {
    if (value >= uclip) {
      value=uclip;
    }
 else {
      if (value <= lclip) {
        value=lclip;
      }
    }
  }
 else {
    if (value <= lclip) {
      return;
    }
    base=getLowerClip();
    if (value >= uclip) {
      value=uclip;
    }
  }
  RectangleEdge yAxisLocation=plot.getRangeAxisEdge();
  double transY1=rangeAxis.valueToJava2D(base,dataArea,yAxisLocation);
  double transY2=rangeAxis.valueToJava2D(value,dataArea,yAxisLocation);
  double rectX=Math.min(transY2,transY1);
  double rectHeight=state.getBarWidth();
  double rectWidth=Math.abs(transY2 - transY1);
  Rectangle2D bar=new Rectangle2D.Double(rectX,rectY,rectWidth,rectHeight);
  Paint itemPaint=getItemPaint(row,column);
  GradientPaintTransformer t=getGradientPaintTransformer();
  if (t != null && itemPaint instanceof GradientPaint) {
    itemPaint=t.transform((GradientPaint)itemPaint,bar);
  }
  g2.setPaint(itemPaint);
  g2.fill(bar);
  if (isDrawBarOutline() && state.getBarWidth() > BAR_OUTLINE_WIDTH_THRESHOLD) {
    Stroke stroke=getItemOutlineStroke(row,column);
    Paint paint=getItemOutlinePaint(row,column);
    if (stroke != null && paint != null) {
      g2.setStroke(stroke);
      g2.setPaint(paint);
      g2.draw(bar);
    }
  }
  Number n=dataset.getStdDevValue(row,column);
  if (n != null) {
    double valueDelta=n.doubleValue();
    double highVal=rangeAxis.valueToJava2D(meanValue.doubleValue() + valueDelta,dataArea,yAxisLocation);
    double lowVal=rangeAxis.valueToJava2D(meanValue.doubleValue() - valueDelta,dataArea,yAxisLocation);
    if (this.errorIndicatorPaint != null) {
      g2.setPaint(this.errorIndicatorPaint);
    }
 else {
      g2.setPaint(getItemOutlinePaint(row,column));
    }
    if (this.errorIndicatorStroke != null) {
      g2.setStroke(this.errorIndicatorStroke);
    }
 else {
      g2.setStroke(getItemOutlineStroke(row,column));
    }
    Line2D line;
    line=new Line2D.Double(lowVal,rectY + rectHeight / 2.0d,highVal,rectY + rectHeight / 2.0d);
    g2.draw(line);
    line=new Line2D.Double(highVal,rectY + rectHeight * 0.25,highVal,rectY + rectHeight * 0.75);
    g2.draw(line);
    line=new Line2D.Double(lowVal,rectY + rectHeight * 0.25,lowVal,rectY + rectHeight * 0.75);
    g2.draw(line);
  }
  CategoryItemLabelGenerator generator=getItemLabelGenerator(row,column);
  if (generator != null && isItemLabelVisible(row,column)) {
    drawItemLabel(g2,dataset,row,column,plot,generator,bar,(value < 0.0));
  }
  EntityCollection entities=state.getEntityCollection();
  if (entities != null) {
    addItemEntity(entities,dataset,row,column,bar);
  }
}

protected void drawHorizontalItem ( Graphics2D g2 , CategoryItemRendererState state , Rectangle2D dataArea , CategoryPlot plot , CategoryAxis domainAxis , ValueAxis rangeAxis , StatisticalCategoryDataset dataset , int visibleRow , int row , int column ) { double rectY = calculateBarW0 ( plot , PlotOrientation . HORIZONTAL , dataArea , domainAxis , state , visibleRow , column ) ; Number meanValue = dataset . getMeanValue ( row , column ) ; if ( meanValue == null ) { return ; } double value = meanValue . doubleValue ( ) ; double base = 0.0 ; double lclip = getLowerClip ( ) ; double uclip = getUpperClip ( ) ; if ( uclip <= 0.0 ) { if ( value >= uclip ) { return ; } base = uclip ; if ( value <= lclip ) { value = lclip ; } } else if ( lclip <= 0.0 ) { if ( value >= uclip ) { value = uclip ; } else { if ( value <= lclip ) { value = lclip ; } } } else { if ( value <= lclip ) { return ; } base = getLowerClip ( ) ; if ( value >= uclip ) { value = uclip ; } } RectangleEdge yAxisLocation = plot . getRangeAxisEdge ( ) ; double transY1 = rangeAxis . valueToJava2D ( base , dataArea , yAxisLocation ) ; double transY2 = rangeAxis . valueToJava2D ( value , dataArea , yAxisLocation ) ; double rectX = Math . min ( transY2 , transY1 ) ; double rectHeight = state . getBarWidth ( ) ; double rectWidth = Math . abs ( transY2 - transY1 ) ; Rectangle2D bar = new Rectangle2D . Double ( rectX , rectY , rectWidth , rectHeight ) ; Paint itemPaint = getItemPaint ( row , column ) ; GradientPaintTransformer t = getGradientPaintTransformer ( ) ; if ( t != null && itemPaint instanceof GradientPaint ) { itemPaint = t . transform ( ( GradientPaint ) itemPaint , bar ) ; } g2 . setPaint ( itemPaint ) ; g2 . fill ( bar ) ; if ( isDrawBarOutline ( ) && state . getBarWidth ( ) > BAR_OUTLINE_WIDTH_THRESHOLD ) { Stroke stroke = getItemOutlineStroke ( row , column ) ; Paint paint = getItemOutlinePaint ( row , column ) ; if ( stroke != null && paint != null ) { g2 . setStroke ( stroke ) ; g2 . setPaint ( paint ) ; g2 . draw ( bar ) ; } } Number n = dataset . getStdDevValue ( row , column ) ; if ( n != null ) { double valueDelta = n . doubleValue ( ) ; double highVal = rangeAxis . valueToJava2D ( meanValue . doubleValue ( ) + valueDelta , dataArea , yAxisLocation ) ; double lowVal = rangeAxis . valueToJava2D ( meanValue . doubleValue ( ) - valueDelta , dataArea , yAxisLocation ) ; if ( this . errorIndicatorPaint != null ) { g2 . setPaint ( this . errorIndicatorPaint ) ; } else { g2 . setPaint ( getItemOutlinePaint ( row , column ) ) ; } if ( this . errorIndicatorStroke != null ) { g2 . setStroke ( this . errorIndicatorStroke ) ; } else { g2 . setStroke ( getItemOutlineStroke ( row , column ) ) ; } Line2D line ; line = new Line2D . Double ( lowVal , rectY + rectHeight / 2.0d , highVal , rectY + rectHeight / 2.0d ) ; g2 . draw ( line ) ; line = new Line2D . Double ( highVal , rectY + rectHeight * 0.25 , highVal , rectY + rectHeight * 0.75 ) ; g2 . draw ( line ) ; line = new Line2D . Double ( lowVal , rectY + rectHeight * 0.25 , lowVal , rectY + rectHeight * 0.75 ) ; g2 . draw ( line ) ; } CategoryItemLabelGenerator generator = getItemLabelGenerator ( row , column ) ; if ( generator != null && isItemLabelVisible ( row , column ) ) { drawItemLabel ( g2 , dataset , row , column , plot , generator , bar , ( value < 0.0 ) ) ; } EntityCollection entities = state . getEntityCollection ( ) ; if ( entities != null ) { addItemEntity ( entities , dataset , row , column , bar ) ; } }
draws an item for a plot with a horizontal orientation .
