## org.jfree.chart.renderer
Class XYBarRenderer

    java.lang.Object
      org.jfree.chart.renderer.AbstractRenderer
          org.jfree.chart.renderer.AbstractXYItemRenderer
              org.jfree.chart.renderer.XYBarRenderer

All Implemented Interfaces:
  java.lang.Cloneable, org.jfree.util.PublicCloneable, java.io.Serializable, XYItemRenderer

Direct Known Subclasses:
  ClusteredXYBarRenderer, StackedXYBarRenderer

public class XYBarRenderer
extends AbstractXYItemRenderer
implements XYItemRenderer, java.lang.Cloneable, org.jfree.util.PublicCloneable, java.io.Serializable

A renderer that draws bars on an `XYPlot` (requires an `IntervalXYDataset`).

This renderer does not include any code for calculating the crosshair point.

See Also:
  Serialized Form

Field Summary

Fields inherited from class org.jfree.chart.renderer.AbstractRenderer
`DEFAULT_OUTLINE_PAINT, DEFAULT_OUTLINE_STROKE, DEFAULT_PAINT, DEFAULT_SHAPE, DEFAULT_STROKE, DEFAULT_VALUE_LABEL_FONT, DEFAULT_VALUE_LABEL_PAINT, ZERO`

Constructor Summary
`XYBarRenderer()` The default constructor.
`XYBarRenderer(double margin)` Constructs a new renderer.

Method Summary
`java.lang.Object` `clone()` Returns a clone of the renderer.
`void` `drawItem(java.awt.Graphics2D g2, XYItemRendererState state, java.awt.geom.Rectangle2D dataArea, PlotRenderingInfo info, XYPlot plot, ValueAxis domainAxis, ValueAxis rangeAxis, XYDataset dataset, int series, int item, CrosshairState crosshairState, int pass)` Draws the visual representation of a single data item.
`org.jfree.ui.GradientPaintTransformer` `getGradientPaintTransformer()` Returns the gradient paint transformer (an object used to transform gradient paint objects to fit each bar.
`double` `getMargin()` Returns the margin which is a percentage amount by which the bars are trimmed.
`XYItemRendererState` `initialise(java.awt.Graphics2D g2, java.awt.geom.Rectangle2D dataArea, XYPlot plot, XYDataset dataset, PlotRenderingInfo info)` Initialises the renderer and returns a state object that should be passed to all subsequent calls to the drawItem() method.
`void` `setGradientPaintTransformer(org.jfree.ui.GradientPaintTransformer transformer)` Sets the gradient paint transformer and sends a `RendererChangeEvent` to all registered listeners.
`void` `setMargin(double margin)` Sets the percentage amount by which the bars are trimmed and sends a `RendererChangeEvent` to all registered listeners.

Methods inherited from class org.jfree.chart.renderer.AbstractXYItemRenderer

`drawDomainGridLine, drawDomainMarker, drawItemLabel, drawRangeGridLine, drawRangeMarker, equals, fillDomainGridBand, fillRangeGridBand, getBaseLabelGenerator, getBaseToolTipGenerator, getDrawingSupplier, getLabelGenerator, getLegendItem, getPassCount, getPlot, getRangeExtent, getRangeType, getSeriesLabelGenerator, getSeriesToolTipGenerator, getToolTipGenerator, getURLGenerator, setBaseLabelGenerator, setBaseToolTipGenerator, setLabelGenerator, setPlot, setSeriesLabelGenerator, setSeriesToolTipGenerator, setToolTipGenerator, setURLGenerator, updateCrosshairValues`

Methods inherited from class org.jfree.chart.renderer.AbstractRenderer

`addChangeListener, calculateLabelAnchorPoint, createTransformedShape, getBaseItemLabelAnchor, getBaseItemLabelAngle, getBaseItemLabelFont, getBaseItemLabelPaint, getBaseItemLabelRotationAnchor, getBaseItemLabelsVisible, getBaseItemLabelTextAnchor, getBaseNegativeItemLabelPosition, getBaseOutlinePaint, getBaseOutlineStroke, getBasePaint, getBasePositiveItemLabelPosition, getBaseShape, getBaseStroke, getItemLabelAnchor, getItemLabelAnchorOffset, getItemLabelAngle, getItemLabelFont, getItemLabelFont, getItemLabelPaint, getItemLabelPaint, getItemLabelRotationAnchor, getItemLabelTextAnchor, getItemOutlinePaint, getItemOutlineStroke, getItemPaint, getItemShape, getItemStroke, getNegativeItemLabelPosition, getNegativeItemLabelPosition, getPositiveItemLabelPosition, getPositiveItemLabelPosition, getSeriesItemLabelAnchor, getSeriesItemLabelAngle, getSeriesItemLabelFont, getSeriesItemLabelPaint, getSeriesItemLabelRotationAnchor, getSeriesItemLabelTextAnchor, getSeriesNegativeItemLabelPosition, getSeriesOutlinePaint, getSeriesOutlineStroke, getSeriesPaint, getSeriesPositiveItemLabelPosition, getSeriesShape, getSeriesStroke, hashCode, isItemLabelVisible, isSeriesItemLabelsVisible, notifyListeners, removeChangeListener, setBaseAngle, setBaseItemLabelAnchor, setBaseItemLabelFont, setBaseItemLabelFont, setBaseItemLabelPaint, setBaseItemLabelPaint, setBaseItemLabelRotationAnchor, setBaseItemLabelsVisible, setBaseItemLabelsVisible, setBaseItemLabelsVisible, setBaseItemLabelTextAnchor, setBaseNegativeItemLabelPosition, setBaseNegativeItemLabelPosition, setBaseOutlinePaint, setBaseOutlinePaint, setBaseOutlineStroke, setBaseOutlineStroke, setBasePaint, setBasePaint, setBasePositiveItemLabelPosition, setBasePositiveItemLabelPosition, setBaseShape, setBaseShape, setBaseStroke, setBaseStroke, setItemLabelAnchor, setItemLabelAnchorOffset, setItemLabelAngle, setItemLabelFont, setItemLabelFont, setItemLabelPaint, setItemLabelPaint, setItemLabelRotationAnchor, setItemLabelsVisible, setItemLabelsVisible, setItemLabelsVisible, setItemLabelTextAnchor, setNegativeItemLabelPosition, setNegativeItemLabelPosition, setOutlinePaint, setOutlinePaint, setOutlineStroke, setOutlineStroke, setPaint, setPaint, setPositiveItemLabelPosition, setPositiveItemLabelPosition, setSeriesAngle, setSeriesItemLabelAnchor, setSeriesItemLabelFont, setSeriesItemLabelFont, setSeriesItemLabelPaint, setSeriesItemLabelPaint, setSeriesItemLabelRotationAnchor, setSeriesItemLabelsVisible, setSeriesItemLabelsVisible, setSeriesItemLabelsVisible, setSeriesItemLabelTextAnchor, setSeriesNegativeItemLabelPosition, setSeriesNegativeItemLabelPosition, setSeriesOutlinePaint, setSeriesOutlinePaint, setSeriesOutlineStroke, setSeriesOutlineStroke, setSeriesPaint, setSeriesPaint, setSeriesPositiveItemLabelPosition, setSeriesPositiveItemLabelPosition, setSeriesShape, setSeriesShape, setSeriesStroke, setSeriesStroke, setShape, setShape, setStroke, setStroke`

Methods inherited from class java.lang.Object
`finalize, getClass, notify, notifyAll, toString, wait, wait, wait`

Methods inherited from interface org.jfree.chart.renderer.XYItemRenderer

`addChangeListener, drawDomainGridLine, drawDomainMarker, drawRangeGridLine, drawRangeMarker, fillDomainGridBand, fillRangeGridBand, getBaseItemLabelFont, getBaseItemLabelPaint, getBaseItemLabelsVisible, getBaseLabelGenerator, getBaseNegativeItemLabelPosition, getBaseOutlinePaint, getBaseOutlineStroke, getBasePaint, getBasePositiveItemLabelPosition, getBaseShape, getBaseStroke, getBaseToolTipGenerator, getItemLabelFont, getItemLabelFont, getItemLabelPaint, getItemLabelPaint, getItemOutlinePaint, getItemOutlineStroke, getItemPaint, getItemShape, getItemStroke, getLabelGenerator, getLegendItem, getNegativeItemLabelPosition, getNegativeItemLabelPosition, getPassCount, getPlot, getPositiveItemLabelPosition, getPositiveItemLabelPosition, getRangeExtent, getRangeType, getSeriesItemLabelFont, getSeriesItemLabelPaint, getSeriesLabelGenerator, getSeriesNegativeItemLabelPosition, getSeriesOutlinePaint, getSeriesOutlineStroke, getSeriesPaint, getSeriesPositiveItemLabelPosition, getSeriesShape, getSeriesStroke, getSeriesToolTipGenerator, getToolTipGenerator, getURLGenerator, isItemLabelVisible, isSeriesItemLabelsVisible, removeChangeListener, setBaseItemLabelFont, setBaseItemLabelPaint, setBaseItemLabelsVisible, setBaseItemLabelsVisible, setBaseItemLabelsVisible, setBaseLabelGenerator, setBaseNegativeItemLabelPosition, setBaseNegativeItemLabelPosition, setBaseOutlinePaint, setBaseOutlineStroke, setBasePaint, setBasePositiveItemLabelPosition, setBasePositiveItemLabelPosition, setBaseShape, setBaseStroke, setBaseToolTipGenerator, setItemLabelFont, setItemLabelPaint, setItemLabelsVisible, setItemLabelsVisible, setItemLabelsVisible, setLabelGenerator, setNegativeItemLabelPosition, setNegativeItemLabelPosition, setOutlinePaint, setOutlineStroke, setPaint, setPlot, setPositiveItemLabelPosition, setPositiveItemLabelPosition, setSeriesItemLabelFont, setSeriesItemLabelPaint, setSeriesItemLabelsVisible, setSeriesItemLabelsVisible, setSeriesItemLabelsVisible, setSeriesLabelGenerator, setSeriesNegativeItemLabelPosition, setSeriesNegativeItemLabelPosition, setSeriesOutlinePaint, setSeriesOutlineStroke, setSeriesPaint, setSeriesPositiveItemLabelPosition, setSeriesPositiveItemLabelPosition, setSeriesShape, setSeriesStroke, setSeriesToolTipGenerator, setShape, setStroke, setToolTipGenerator, setURLGenerator`

Constructor Detail

### XYBarRenderer

    public XYBarRenderer()

  The default constructor.

### XYBarRenderer

    public XYBarRenderer(double margin)

  Constructs a new renderer.

Parameters:
  `margin` - the percentage amount to trim from the width of each bar.

Method Detail

### getMargin

    public double getMargin()

  Returns the margin which is a percentage amount by which the bars are trimmed.

  Returns:
    The margin.

### setMargin

    public void setMargin(double margin)

  Sets the percentage amount by which the bars are trimmed and sends a `RendererChangeEvent` to all registered listeners.

  Parameters:
    `margin` - the new margin.

### getGradientPaintTransformer

    public org.jfree.ui.GradientPaintTransformer getGradientPaintTransformer()

  Returns the gradient paint transformer (an object used to transform gradient paint objects to fit each bar.

  Returns:
    A transformer (`null` possible).

### setGradientPaintTransformer

    public void setGradientPaintTransformer(org.jfree.ui.GradientPaintTransformer transformer)

  Sets the gradient paint transformer and sends a `RendererChangeEvent` to all registered listeners.

  Parameters:
    `transformer` - the transformer (`null` permitted).

### initialise

    public XYItemRendererState initialise(java.awt.Graphics2D g2,
                                          java.awt.geom.Rectangle2D dataArea,
                                          XYPlot plot,
                                          XYDataset dataset,
                                          PlotRenderingInfo info)

  Initialises the renderer and returns a state object that should be passed to all subsequent calls to the drawItem() method. Here we calculate the Java2D y-coordinate for zero, since all the bars have their bases fixed at zero.

  Specified by:
    `initialise` in interface `XYItemRenderer`
  Overrides:
    `initialise` in class `AbstractXYItemRenderer`
  Parameters:
    `g2` - the graphics device.
    `dataArea` - the area inside the axes.
    `plot` - the plot.
    `dataset` - the data.
    `info` - an optional info collection object to return data back to the caller.
  Returns:
    A state object.

### drawItem

    public void drawItem(java.awt.Graphics2D g2,
                         XYItemRendererState state,
                         java.awt.geom.Rectangle2D dataArea,
                         PlotRenderingInfo info,
                         XYPlot plot,
                         ValueAxis domainAxis,
                         ValueAxis rangeAxis,
                         XYDataset dataset,
                         int series,
                         int item,
                         CrosshairState crosshairState,
                         int pass)

  Draws the visual representation of a single data item.

  Specified by:
    `drawItem` in interface `XYItemRenderer`
  Parameters:
    `g2` - the graphics device.
    `state` - the renderer state.
    `dataArea` - the area within which the plot is being drawn.
    `info` - collects information about the drawing.
    `plot` - the plot (can be used to obtain standard color information etc).
    `domainAxis` - the domain axis.
    `rangeAxis` - the range axis.
    `dataset` - the dataset.
    `series` - the series index (zero-based).
    `item` - the item index (zero-based).
    `crosshairState` - crosshair information for the plot (`null` permitted).
    `pass` - the pass index.

### clone

    public java.lang.Object clone()
                           throws java.lang.CloneNotSupportedException

  Returns a clone of the renderer.

  Specified by:
    `clone` in interface `org.jfree.util.PublicCloneable`
  Overrides:
    `clone` in class `AbstractXYItemRenderer`
  Returns:
    A clone.
  Throws:
    `java.lang.CloneNotSupportedException` - if the renderer cannot be cloned.