org.jfree.chart.renderer.xy

## Class XYBlockRenderer

- java.lang.Object
- - org.jfree.chart.renderer.AbstractRenderer
  - - org.jfree.chart.renderer.xy.AbstractXYItemRenderer
    - - org.jfree.chart.renderer.xy.XYBlockRenderer

- All Implemented Interfaces:
    java.io.Serializable, java.lang.Cloneable, java.util.EventListener, AnnotationChangeListener, LegendItemSource, XYItemRenderer, PublicCloneable

      public class XYBlockRenderer
      extends AbstractXYItemRenderer
      implements XYItemRenderer, java.lang.Cloneable, PublicCloneable, java.io.Serializable

  A renderer that represents data from an `XYZDataset` by drawing a color block at each (x, y) point, where the color is a function of the z-value from the dataset. The example shown here is generated by the `XYBlockChartDemo1.java` program included in the JFreeChart demo collection:
  Since:
    1.0.4
  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

    Constructors
    Constructor and Description
    `XYBlockRenderer()` Creates a new `XYBlockRenderer` instance with default attributes.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `java.lang.Object` | `clone()` Returns a clone of this 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 block representing the specified item.
    `boolean` | `equals(java.lang.Object obj)` Tests this `XYBlockRenderer` for equality with an arbitrary object.
    `Range` | `findDomainBounds(XYDataset dataset)` Returns the lower and upper bounds (range) of the x-values in the specified dataset.
    `Range` | `findRangeBounds(XYDataset dataset)` Returns the range of values the renderer requires to display all the items from the specified dataset.
    `RectangleAnchor` | `getBlockAnchor()` Returns the anchor point used to align a block at its (x, y) location.
    `double` | `getBlockHeight()` Returns the block height, in data/axis units.
    `double` | `getBlockWidth()` Returns the block width, in data/axis units.
    `PaintScale` | `getPaintScale()` Returns the paint scale used by the renderer.
    `void` | `setBlockAnchor(RectangleAnchor anchor)` Sets the anchor point used to align a block at its (x, y) location and sends a `RendererChangeEvent` to all registered listeners.
    `void` | `setBlockHeight(double height)` Sets the height of the blocks used to represent each data item and sends a `RendererChangeEvent` to all registered listeners.
    `void` | `setBlockWidth(double width)` Sets the width of the blocks used to represent each data item and sends a `RendererChangeEvent` to all registered listeners.
    `void` | `setPaintScale(PaintScale scale)` Sets the paint scale used by the renderer and sends a `RendererChangeEvent` to all registered listeners.

    - ### Methods inherited from class org.jfree.chart.renderer.xy.AbstractXYItemRenderer

      `addAnnotation, addAnnotation, addEntity, annotationChanged, calculateDomainMarkerTextAnchorPoint, drawAnnotations, drawDomainGridLine, drawDomainLine, drawDomainMarker, drawItemLabel, drawRangeLine, drawRangeMarker, fillDomainGridBand, fillRangeGridBand, findDomainBounds, findRangeBounds, getAnnotations, getBaseItemLabelGenerator, getBaseToolTipGenerator, getDrawingSupplier, getItemLabelGenerator, getItemLabelGenerator, getLegendItem, getLegendItemLabelGenerator, getLegendItems, getLegendItemToolTipGenerator, getLegendItemURLGenerator, getPassCount, getPlot, getSeriesItemLabelGenerator, getSeriesToolTipGenerator, getToolTipGenerator, getToolTipGenerator, getURLGenerator, initialise, isPointInRect, lineTo, moveTo, removeAnnotation, removeAnnotations, setBaseItemLabelGenerator, setBaseToolTipGenerator, setItemLabelGenerator, setLegendItemLabelGenerator, setLegendItemToolTipGenerator, setLegendItemURLGenerator, setPlot, setSeriesItemLabelGenerator, setSeriesToolTipGenerator, setToolTipGenerator, setURLGenerator, updateCrosshairValues, updateCrosshairValues`

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

      `addChangeListener, calculateLabelAnchorPoint, clearSeriesPaints, clearSeriesStrokes, fireChangeEvent, getAutoPopulateSeriesFillPaint, getAutoPopulateSeriesOutlinePaint, getAutoPopulateSeriesOutlineStroke, getAutoPopulateSeriesPaint, getAutoPopulateSeriesShape, getAutoPopulateSeriesStroke, getBaseCreateEntities, getBaseFillPaint, getBaseItemLabelFont, getBaseItemLabelPaint, getBaseItemLabelsVisible, getBaseLegendShape, getBaseLegendTextFont, getBaseLegendTextPaint, getBaseNegativeItemLabelPosition, getBaseOutlinePaint, getBaseOutlineStroke, getBasePaint, getBasePositiveItemLabelPosition, getBaseSeriesVisible, getBaseSeriesVisibleInLegend, getBaseShape, getBaseStroke, getCreateEntities, getDataBoundsIncludesVisibleSeriesOnly, getDefaultEntityRadius, getItemCreateEntity, getItemFillPaint, getItemLabelAnchorOffset, getItemLabelFont, getItemLabelFont, getItemLabelPaint, getItemLabelPaint, getItemOutlinePaint, getItemOutlineStroke, getItemPaint, getItemShape, getItemStroke, getItemVisible, getLegendShape, getLegendTextFont, getLegendTextPaint, getNegativeItemLabelPosition, getNegativeItemLabelPosition, getPositiveItemLabelPosition, getPositiveItemLabelPosition, getSeriesCreateEntities, getSeriesFillPaint, getSeriesItemLabelFont, getSeriesItemLabelPaint, getSeriesNegativeItemLabelPosition, getSeriesOutlinePaint, getSeriesOutlineStroke, getSeriesPaint, getSeriesPositiveItemLabelPosition, getSeriesShape, getSeriesStroke, getSeriesVisible, getSeriesVisible, getSeriesVisibleInLegend, getSeriesVisibleInLegend, getTreatLegendShapeAsLine, hashCode, hasListener, isItemLabelVisible, isSeriesItemLabelsVisible, isSeriesVisible, isSeriesVisibleInLegend, lookupLegendShape, lookupLegendTextFont, lookupLegendTextPaint, lookupSeriesFillPaint, lookupSeriesOutlinePaint, lookupSeriesOutlineStroke, lookupSeriesPaint, lookupSeriesShape, lookupSeriesStroke, notifyListeners, removeChangeListener, setAutoPopulateSeriesFillPaint, setAutoPopulateSeriesOutlinePaint, setAutoPopulateSeriesOutlineStroke, setAutoPopulateSeriesPaint, setAutoPopulateSeriesShape, setAutoPopulateSeriesStroke, setBaseCreateEntities, setBaseCreateEntities, setBaseFillPaint, setBaseFillPaint, setBaseItemLabelFont, setBaseItemLabelFont, setBaseItemLabelPaint, setBaseItemLabelPaint, setBaseItemLabelsVisible, setBaseItemLabelsVisible, setBaseItemLabelsVisible, setBaseLegendShape, setBaseLegendTextFont, setBaseLegendTextPaint, setBaseNegativeItemLabelPosition, setBaseNegativeItemLabelPosition, setBaseOutlinePaint, setBaseOutlinePaint, setBaseOutlineStroke, setBaseOutlineStroke, setBasePaint, setBasePaint, setBasePositiveItemLabelPosition, setBasePositiveItemLabelPosition, setBaseSeriesVisible, setBaseSeriesVisible, setBaseSeriesVisibleInLegend, setBaseSeriesVisibleInLegend, setBaseShape, setBaseShape, setBaseStroke, setBaseStroke, setCreateEntities, setCreateEntities, setDataBoundsIncludesVisibleSeriesOnly, setDefaultEntityRadius, setFillPaint, setFillPaint, setItemLabelAnchorOffset, setItemLabelFont, setItemLabelFont, setItemLabelPaint, setItemLabelPaint, setItemLabelsVisible, setItemLabelsVisible, setItemLabelsVisible, setLegendShape, setLegendTextFont, setLegendTextPaint, setNegativeItemLabelPosition, setNegativeItemLabelPosition, setOutlinePaint, setOutlinePaint, setOutlineStroke, setOutlineStroke, setPaint, setPaint, setPositiveItemLabelPosition, setPositiveItemLabelPosition, setSeriesCreateEntities, setSeriesCreateEntities, setSeriesFillPaint, setSeriesFillPaint, setSeriesItemLabelFont, setSeriesItemLabelFont, setSeriesItemLabelPaint, setSeriesItemLabelPaint, setSeriesItemLabelsVisible, setSeriesItemLabelsVisible, setSeriesItemLabelsVisible, setSeriesNegativeItemLabelPosition, setSeriesNegativeItemLabelPosition, setSeriesOutlinePaint, setSeriesOutlinePaint, setSeriesOutlineStroke, setSeriesOutlineStroke, setSeriesPaint, setSeriesPaint, setSeriesPositiveItemLabelPosition, setSeriesPositiveItemLabelPosition, setSeriesShape, setSeriesShape, setSeriesStroke, setSeriesStroke, setSeriesVisible, setSeriesVisible, setSeriesVisible, setSeriesVisible, setSeriesVisibleInLegend, setSeriesVisibleInLegend, setSeriesVisibleInLegend, setSeriesVisibleInLegend, setShape, setShape, setStroke, setStroke, setTreatLegendShapeAsLine`

    - ### Methods inherited from class java.lang.Object

      `finalize, getClass, notify, notifyAll, toString, wait, wait, wait`

    - ### Methods inherited from interface org.jfree.chart.renderer.xy.XYItemRenderer

      `addAnnotation, addAnnotation, addChangeListener, drawAnnotations, drawDomainGridLine, drawDomainMarker, drawRangeLine, drawRangeMarker, fillDomainGridBand, fillRangeGridBand, getBaseItemLabelFont, getBaseItemLabelGenerator, getBaseItemLabelPaint, getBaseItemLabelsVisible, getBaseNegativeItemLabelPosition, getBaseOutlinePaint, getBaseOutlineStroke, getBasePaint, getBasePositiveItemLabelPosition, getBaseSeriesVisible, getBaseSeriesVisibleInLegend, getBaseShape, getBaseStroke, getBaseToolTipGenerator, getItemLabelFont, getItemLabelFont, getItemLabelGenerator, getItemLabelPaint, getItemLabelPaint, getItemOutlinePaint, getItemOutlineStroke, getItemPaint, getItemShape, getItemStroke, getItemVisible, getLegendItem, getLegendItemLabelGenerator, getNegativeItemLabelPosition, getNegativeItemLabelPosition, getPassCount, getPlot, getPositiveItemLabelPosition, getPositiveItemLabelPosition, getSeriesItemLabelFont, getSeriesItemLabelGenerator, getSeriesItemLabelPaint, getSeriesNegativeItemLabelPosition, getSeriesOutlinePaint, getSeriesOutlineStroke, getSeriesPaint, getSeriesPositiveItemLabelPosition, getSeriesShape, getSeriesStroke, getSeriesToolTipGenerator, getSeriesVisible, getSeriesVisible, getSeriesVisibleInLegend, getSeriesVisibleInLegend, getToolTipGenerator, getURLGenerator, initialise, isItemLabelVisible, isSeriesItemLabelsVisible, isSeriesVisible, isSeriesVisibleInLegend, removeAnnotation, removeAnnotations, removeChangeListener, setBaseItemLabelFont, setBaseItemLabelGenerator, setBaseItemLabelPaint, setBaseItemLabelsVisible, setBaseItemLabelsVisible, setBaseItemLabelsVisible, setBaseNegativeItemLabelPosition, setBaseNegativeItemLabelPosition, setBaseOutlinePaint, setBaseOutlineStroke, setBasePaint, setBasePositiveItemLabelPosition, setBasePositiveItemLabelPosition, setBaseSeriesVisible, setBaseSeriesVisible, setBaseSeriesVisibleInLegend, setBaseSeriesVisibleInLegend, setBaseShape, setBaseStroke, setBaseToolTipGenerator, setItemLabelFont, setItemLabelGenerator, setItemLabelPaint, setItemLabelsVisible, setItemLabelsVisible, setItemLabelsVisible, setLegendItemLabelGenerator, setNegativeItemLabelPosition, setNegativeItemLabelPosition, setOutlinePaint, setOutlineStroke, setPaint, setPlot, setPositiveItemLabelPosition, setPositiveItemLabelPosition, setSeriesItemLabelFont, setSeriesItemLabelGenerator, setSeriesItemLabelPaint, setSeriesItemLabelsVisible, setSeriesItemLabelsVisible, setSeriesItemLabelsVisible, setSeriesNegativeItemLabelPosition, setSeriesNegativeItemLabelPosition, setSeriesOutlinePaint, setSeriesOutlineStroke, setSeriesPaint, setSeriesPositiveItemLabelPosition, setSeriesPositiveItemLabelPosition, setSeriesShape, setSeriesStroke, setSeriesToolTipGenerator, setSeriesVisible, setSeriesVisible, setSeriesVisible, setSeriesVisible, setSeriesVisibleInLegend, setSeriesVisibleInLegend, setSeriesVisibleInLegend, setSeriesVisibleInLegend, setShape, setStroke, setToolTipGenerator, setURLGenerator`

    - ### Methods inherited from interface org.jfree.chart.LegendItemSource

      `getLegendItems`

- - ### Constructor Detail

    - #### XYBlockRenderer

          public XYBlockRenderer()

      Creates a new `XYBlockRenderer` instance with default attributes.

  - ### Method Detail

    - #### getBlockWidth

          public double getBlockWidth()

      Returns the block width, in data/axis units.
      Returns:
        The block width.
      See Also:
        `setBlockWidth(double)`

    - #### setBlockWidth

          public void setBlockWidth(double width)

      Sets the width of the blocks used to represent each data item and sends a `RendererChangeEvent` to all registered listeners.
      Parameters:
        `width` - the new width, in data/axis units (must be > 0.0).
      See Also:
        `getBlockWidth()`

    - #### getBlockHeight

          public double getBlockHeight()

      Returns the block height, in data/axis units.
      Returns:
        The block height.
      See Also:
        `setBlockHeight(double)`

    - #### setBlockHeight

          public void setBlockHeight(double height)

      Sets the height of the blocks used to represent each data item and sends a `RendererChangeEvent` to all registered listeners.
      Parameters:
        `height` - the new height, in data/axis units (must be > 0.0).
      See Also:
        `getBlockHeight()`

    - #### getBlockAnchor

          public RectangleAnchor getBlockAnchor()

      Returns the anchor point used to align a block at its (x, y) location. The default values is `RectangleAnchor.CENTER`.
      Returns:
        The anchor point (never `null`).
      See Also:
        `setBlockAnchor(RectangleAnchor)`

    - #### setBlockAnchor

          public void setBlockAnchor(RectangleAnchor anchor)

      Sets the anchor point used to align a block at its (x, y) location and sends a `RendererChangeEvent` to all registered listeners.
      Parameters:
        `anchor` - the anchor.
      See Also:
        `getBlockAnchor()`

    - #### getPaintScale

          public PaintScale getPaintScale()

      Returns the paint scale used by the renderer.
      Returns:
        The paint scale (never `null`).
      Since:
        1.0.4
      See Also:
        `setPaintScale(PaintScale)`

    - #### setPaintScale

          public void setPaintScale(PaintScale scale)

      Sets the paint scale used by the renderer and sends a `RendererChangeEvent` to all registered listeners.
      Parameters:
        `scale` - the scale (`null` not permitted).
      Since:
        1.0.4
      See Also:
        `getPaintScale()`

    - #### findDomainBounds

          public Range findDomainBounds(XYDataset dataset)

      Returns the lower and upper bounds (range) of the x-values in the specified dataset.
      Specified by:
        `findDomainBounds` in interface `XYItemRenderer`
      Overrides:
        `findDomainBounds` in class `AbstractXYItemRenderer`
      Parameters:
        `dataset` - the dataset (`null` permitted).
      Returns:
        The range (`null` if the dataset is `null` or empty).
      See Also:
        `findRangeBounds(XYDataset)`

    - #### findRangeBounds

          public Range findRangeBounds(XYDataset dataset)

      Returns the range of values the renderer requires to display all the items from the specified dataset.
      Specified by:
        `findRangeBounds` in interface `XYItemRenderer`
      Overrides:
        `findRangeBounds` in class `AbstractXYItemRenderer`
      Parameters:
        `dataset` - the dataset (`null` permitted).
      Returns:
        The range (`null` if the dataset is `null` or empty).
      See Also:
        `findDomainBounds(XYDataset)`

    - #### 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 block representing the specified item.
      Specified by:
        `drawItem` in interface `XYItemRenderer`
      Parameters:
        `g2` - the graphics device.
        `state` - the state.
        `dataArea` - the data area.
        `info` - the plot rendering info.
        `plot` - the plot.
        `domainAxis` - the x-axis.
        `rangeAxis` - the y-axis.
        `dataset` - the dataset.
        `series` - the series index.
        `item` - the item index.
        `crosshairState` - the crosshair state.
        `pass` - the pass index.

    - #### equals

          public boolean equals(java.lang.Object obj)

      Tests this `XYBlockRenderer` for equality with an arbitrary object. This method returns `true` if and only if:
      - `obj` is an instance of `XYBlockRenderer` (not `null`);
      - `obj` has the same field values as this `XYBlockRenderer`;
      Overrides:
        `equals` in class `AbstractXYItemRenderer`
      Parameters:
        `obj` - the object (`null` permitted).
      Returns:
        A boolean.

    - #### clone

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

      Returns a clone of this renderer.
      Specified by:
        `clone` in interface `PublicCloneable`
      Overrides:
        `clone` in class `AbstractXYItemRenderer`
      Returns:
        A clone of this renderer.
      Throws:
        `java.lang.CloneNotSupportedException` - if there is a problem creating the clone.