org.jfree.chart.renderer.xy

## Interface XYItemRenderer

- All Superinterfaces:
    LegendItemSource
  All Known Implementing Classes:
    AbstractXYItemRenderer, StandardXYItemRenderer, XYBlockRenderer, XYLineAndShapeRenderer

      public interface XYItemRenderer
      extends LegendItemSource

  Interface for rendering the visual representation of a single (x, y) item on an `XYPlot`.

  To support cloning charts, it is recommended that renderers implement both the `Cloneable` and `PublicCloneable` interfaces.

- - ### Method Summary

    All Methods Instance Methods Abstract Methods Deprecated Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `addAnnotation(XYAnnotation annotation)` Adds an annotation and sends a `RendererChangeEvent` to all registered listeners.
    `void` | `addAnnotation(XYAnnotation annotation, Layer layer)` Adds an annotation to the specified layer.
    `void` | `addChangeListener(RendererChangeListener listener)` Add a renderer change listener.
    `void` | `drawAnnotations(java.awt.Graphics2D g2, java.awt.geom.Rectangle2D dataArea, ValueAxis domainAxis, ValueAxis rangeAxis, Layer layer, PlotRenderingInfo info)` Draws all the annotations for the specified layer.
    `void` | `drawDomainGridLine(java.awt.Graphics2D g2, XYPlot plot, ValueAxis axis, java.awt.geom.Rectangle2D dataArea, double value)` Draws a grid line against the domain axis.
    `void` | `drawDomainMarker(java.awt.Graphics2D g2, XYPlot plot, ValueAxis axis, Marker marker, java.awt.geom.Rectangle2D dataArea)` Draws the specified `marker` against the domain axis.
    `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)` Called for each item to be plotted.
    `void` | `drawRangeLine(java.awt.Graphics2D g2, XYPlot plot, ValueAxis axis, java.awt.geom.Rectangle2D dataArea, double value, java.awt.Paint paint, java.awt.Stroke stroke)` Draws a line perpendicular to the range axis.
    `void` | `drawRangeMarker(java.awt.Graphics2D g2, XYPlot plot, ValueAxis axis, Marker marker, java.awt.geom.Rectangle2D dataArea)` Draws a horizontal line across the chart to represent a 'range marker'.
    `void` | `fillDomainGridBand(java.awt.Graphics2D g2, XYPlot plot, ValueAxis axis, java.awt.geom.Rectangle2D dataArea, double start, double end)` Fills a band between two values on the axis.
    `void` | `fillRangeGridBand(java.awt.Graphics2D g2, XYPlot plot, ValueAxis axis, java.awt.geom.Rectangle2D dataArea, double start, double end)` Fills a band between two values on the range axis.
    `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 lower and upper bounds (range) of the y-values in the specified dataset.
    `java.awt.Font` | `getBaseItemLabelFont()` Returns the base item label font (this is used when no other font setting is available).
    `XYItemLabelGenerator` | `getBaseItemLabelGenerator()` Returns the base item label generator.
    `java.awt.Paint` | `getBaseItemLabelPaint()` Returns the base item label paint.
    `java.lang.Boolean` | `getBaseItemLabelsVisible()` Returns the base setting for item label visibility.
    `ItemLabelPosition` | `getBaseNegativeItemLabelPosition()` Returns the base item label position for negative values.
    `java.awt.Paint` | `getBaseOutlinePaint()` Returns the base (or default) outline paint.
    `java.awt.Stroke` | `getBaseOutlineStroke()` Returns the base outline stroke.
    `java.awt.Paint` | `getBasePaint()` Returns the base (or default) paint.
    `ItemLabelPosition` | `getBasePositiveItemLabelPosition()` Returns the base positive item label position.
    `boolean` | `getBaseSeriesVisible()` Returns the base visibility for all series.
    `boolean` | `getBaseSeriesVisibleInLegend()` Returns the base visibility in the legend for all series.
    `java.awt.Shape` | `getBaseShape()` Returns the base shape.
    `java.awt.Stroke` | `getBaseStroke()` Returns the base (or default) stroke.
    `XYToolTipGenerator` | `getBaseToolTipGenerator()` Returns the base tool tip generator.
    `java.awt.Font` | `getItemLabelFont()` Deprecated. This method should no longer be used (as of version 1.0.6). It is sufficient to rely on `getSeriesItemLabelFont(int)` and `getBaseItemLabelFont()`.
    `java.awt.Font` | `getItemLabelFont(int row, int column)` Returns the font for an item label.
    `XYItemLabelGenerator` | `getItemLabelGenerator(int row, int column)` Returns the item label generator for a data item.
    `java.awt.Paint` | `getItemLabelPaint()` Deprecated. This method should no longer be used (as of version 1.0.6). It is sufficient to rely on `getSeriesItemLabelPaint(int)` and `getBaseItemLabelPaint()`.
    `java.awt.Paint` | `getItemLabelPaint(int row, int column)` Returns the paint used to draw an item label.
    `java.awt.Paint` | `getItemOutlinePaint(int row, int column)` Returns the paint used to outline data items as they are drawn.
    `java.awt.Stroke` | `getItemOutlineStroke(int row, int column)` Returns the stroke used to outline data items.
    `java.awt.Paint` | `getItemPaint(int row, int column)` Returns the paint used to color data items as they are drawn.
    `java.awt.Shape` | `getItemShape(int row, int column)` Returns a shape used to represent a data item.
    `java.awt.Stroke` | `getItemStroke(int row, int column)` Returns the stroke used to draw data items.
    `boolean` | `getItemVisible(int series, int item)` Returns a boolean that indicates whether or not the specified item should be drawn (this is typically used to hide an entire series).
    `LegendItem` | `getLegendItem(int datasetIndex, int series)` Returns a legend item for a series from a dataset.
    `XYSeriesLabelGenerator` | `getLegendItemLabelGenerator()` Returns the legend item label generator.
    `ItemLabelPosition` | `getNegativeItemLabelPosition()` Deprecated. This method should no longer be used (as of version 1.0.6). It is sufficient to rely on `getSeriesNegativeItemLabelPosition(int)` and `getBaseNegativeItemLabelPosition()`.
    `ItemLabelPosition` | `getNegativeItemLabelPosition(int row, int column)` Returns the item label position for negative values.
    `int` | `getPassCount()` Returns the number of passes through the data required by the renderer.
    `XYPlot` | `getPlot()` Returns the plot that this renderer has been assigned to.
    `ItemLabelPosition` | `getPositiveItemLabelPosition()` Deprecated. This method should no longer be used (as of version 1.0.6). It is sufficient to rely on `getSeriesPositiveItemLabelPosition(int)` and `getBasePositiveItemLabelPosition()`.
    `ItemLabelPosition` | `getPositiveItemLabelPosition(int row, int column)` Returns the item label position for positive values.
    `java.awt.Font` | `getSeriesItemLabelFont(int series)` Returns the font for all the item labels in a series.
    `XYItemLabelGenerator` | `getSeriesItemLabelGenerator(int series)` Returns the item label generator for a series.
    `java.awt.Paint` | `getSeriesItemLabelPaint(int series)` Returns the paint used to draw the item labels for a series.
    `ItemLabelPosition` | `getSeriesNegativeItemLabelPosition(int series)` Returns the item label position for all negative values in a series.
    `java.awt.Paint` | `getSeriesOutlinePaint(int series)` Returns the paint used to outline an item drawn by the renderer.
    `java.awt.Stroke` | `getSeriesOutlineStroke(int series)` Returns the stroke used to outline the items in a series.
    `java.awt.Paint` | `getSeriesPaint(int series)` Returns the paint used to color an item drawn by the renderer.
    `ItemLabelPosition` | `getSeriesPositiveItemLabelPosition(int series)` Returns the item label position for all positive values in a series.
    `java.awt.Shape` | `getSeriesShape(int series)` Returns a shape used to represent the items in a series.
    `java.awt.Stroke` | `getSeriesStroke(int series)` Returns the stroke used to draw the items in a series.
    `XYToolTipGenerator` | `getSeriesToolTipGenerator(int series)` Returns the tool tip generator for a series.
    `java.lang.Boolean` | `getSeriesVisible()` Deprecated. This method should no longer be used (as of version 1.0.6). It is sufficient to rely on `getSeriesVisible(int)` and `getBaseSeriesVisible()`.
    `java.lang.Boolean` | `getSeriesVisible(int series)` Returns the flag that controls whether a series is visible.
    `java.lang.Boolean` | `getSeriesVisibleInLegend()` Deprecated. This method should no longer be used (as of version 1.0.6). It is sufficient to rely on `getSeriesVisibleInLegend(int)` and `getBaseSeriesVisibleInLegend()`.
    `java.lang.Boolean` | `getSeriesVisibleInLegend(int series)` Returns the flag that controls whether a series is visible in the legend.
    `XYToolTipGenerator` | `getToolTipGenerator(int row, int column)` Returns the tool tip generator for a data item.
    `XYURLGenerator` | `getURLGenerator()` Returns the URL generator for HTML image maps.
    `XYItemRendererState` | `initialise(java.awt.Graphics2D g2, java.awt.geom.Rectangle2D dataArea, XYPlot plot, XYDataset dataset, PlotRenderingInfo info)` Initialises the renderer then returns the number of 'passes' through the data that the renderer will require (usually just one).
    `boolean` | `isItemLabelVisible(int row, int column)` Returns `true` if an item label is visible, and `false` otherwise.
    `boolean` | `isSeriesItemLabelsVisible(int series)` Returns `true` if the item labels for a series are visible, and `false` otherwise.
    `boolean` | `isSeriesVisible(int series)` Returns a boolean that indicates whether or not the specified series should be drawn (this is typically used to hide an entire series).
    `boolean` | `isSeriesVisibleInLegend(int series)` Returns `true` if the series should be shown in the legend, and `false` otherwise.
    `boolean` | `removeAnnotation(XYAnnotation annotation)` Removes the specified annotation and sends a `RendererChangeEvent` to all registered listeners.
    `void` | `removeAnnotations()` Removes all annotations and sends a `RendererChangeEvent` to all registered listeners.
    `void` | `removeChangeListener(RendererChangeListener listener)` Removes a change listener.
    `void` | `setBaseItemLabelFont(java.awt.Font font)` Sets the base item label font and sends a `RendererChangeEvent` to all registered listeners.
    `void` | `setBaseItemLabelGenerator(XYItemLabelGenerator generator)` Sets the base item label generator and sends a `RendererChangeEvent` to all registered listeners.
    `void` | `setBaseItemLabelPaint(java.awt.Paint paint)` Sets the base item label paint and sends a `RendererChangeEvent` to all registered listeners.
    `void` | `setBaseItemLabelsVisible(boolean visible)` Sets the base flag that controls whether or not item labels are visible.
    `void` | `setBaseItemLabelsVisible(java.lang.Boolean visible)` Sets the base setting for item label visibility.
    `void` | `setBaseItemLabelsVisible(java.lang.Boolean visible, boolean notify)` Sets the base visibility for item labels and, if requested, sends a `RendererChangeEvent` to all registered listeners.
    `void` | `setBaseNegativeItemLabelPosition(ItemLabelPosition position)` Sets the base item label position for negative values and sends a `RendererChangeEvent` to all registered listeners.
    `void` | `setBaseNegativeItemLabelPosition(ItemLabelPosition position, boolean notify)` Sets the base negative item label position and, if requested, sends a `RendererChangeEvent` to all registered listeners.
    `void` | `setBaseOutlinePaint(java.awt.Paint paint)` Sets the base outline paint and sends a `RendererChangeEvent` to all registered listeners.
    `void` | `setBaseOutlineStroke(java.awt.Stroke stroke)` Sets the base outline stroke and sends a `RendererChangeEvent` to all registered listeners.
    `void` | `setBasePaint(java.awt.Paint paint)` Sets the base paint and sends a `RendererChangeEvent` to all registered listeners.
    `void` | `setBasePositiveItemLabelPosition(ItemLabelPosition position)` Sets the base positive item label position.
    `void` | `setBasePositiveItemLabelPosition(ItemLabelPosition position, boolean notify)` Sets the base positive item label position and, if requested, sends a `RendererChangeEvent` to all registered listeners.
    `void` | `setBaseSeriesVisible(boolean visible)` Sets the base visibility and sends a `RendererChangeEvent` to all registered listeners.
    `void` | `setBaseSeriesVisible(boolean visible, boolean notify)` Sets the base visibility and, if requested, sends a `RendererChangeEvent` to all registered listeners.
    `void` | `setBaseSeriesVisibleInLegend(boolean visible)` Sets the base visibility in the legend and sends a `RendererChangeEvent` to all registered listeners.
    `void` | `setBaseSeriesVisibleInLegend(boolean visible, boolean notify)` Sets the base visibility in the legend and, if requested, sends a `RendererChangeEvent` to all registered listeners.
    `void` | `setBaseShape(java.awt.Shape shape)` Sets the base shape and sends a `RendererChangeEvent` to all registered listeners.
    `void` | `setBaseStroke(java.awt.Stroke stroke)` Sets the base stroke and sends a `RendererChangeEvent` to all registered listeners.
    `void` | `setBaseToolTipGenerator(XYToolTipGenerator generator)` Sets the base tool tip generator and sends a `RendererChangeEvent` to all registered listeners.
    `void` | `setItemLabelFont(java.awt.Font font)` Deprecated. This method should no longer be used (as of version 1.0.6). It is sufficient to rely on `setSeriesItemLabelFont(int, Font)` and `setBaseItemLabelFont(Font)`.
    `void` | `setItemLabelGenerator(XYItemLabelGenerator generator)` Deprecated. As of version 1.0.6, this override setting should not be used. You can use the base setting instead (`setBaseItemLabelGenerator(XYItemLabelGenerator)`).
    `void` | `setItemLabelPaint(java.awt.Paint paint)` Deprecated. This method should no longer be used (as of version 1.0.6). It is sufficient to rely on `setSeriesItemLabelPaint(int, Paint)` and `setBaseItemLabelPaint(Paint)`.
    `void` | `setItemLabelsVisible(boolean visible)` Deprecated. This method should no longer be used (as of version 1.0.6). It is sufficient to rely on `setSeriesItemLabelsVisible(int, Boolean)` and `setBaseItemLabelsVisible(boolean)`.
    `void` | `setItemLabelsVisible(java.lang.Boolean visible)` Deprecated. This method should no longer be used (as of version 1.0.6). It is sufficient to rely on `setSeriesItemLabelsVisible(int, Boolean)` and `setBaseItemLabelsVisible(boolean)`.
    `void` | `setItemLabelsVisible(java.lang.Boolean visible, boolean notify)` Deprecated. This method should no longer be used (as of version 1.0.6). It is sufficient to rely on `setSeriesItemLabelsVisible(int, Boolean, boolean)` and `setBaseItemLabelsVisible(Boolean, boolean)`.
    `void` | `setLegendItemLabelGenerator(XYSeriesLabelGenerator generator)` Sets the legend item label generator and sends a `RendererChangeEvent` to all registered listeners.
    `void` | `setNegativeItemLabelPosition(ItemLabelPosition position)` Deprecated. This method should no longer be used (as of version 1.0.6). It is sufficient to rely on `setSeriesNegativeItemLabelPosition(int, ItemLabelPosition)` and `setBaseNegativeItemLabelPosition(ItemLabelPosition)`.
    `void` | `setNegativeItemLabelPosition(ItemLabelPosition position, boolean notify)` Deprecated. This method should no longer be used (as of version 1.0.6). It is sufficient to rely on `setSeriesNegativeItemLabelPosition(int, ItemLabelPosition, boolean)` and `setBaseNegativeItemLabelPosition( ItemLabelPosition, boolean)`.
    `void` | `setOutlinePaint(java.awt.Paint paint)` Deprecated. This method should no longer be used (as of version 1.0.6). It is sufficient to rely on `setSeriesOutlinePaint(int, Paint)` and `setBaseOutlinePaint(Paint)`.
    `void` | `setOutlineStroke(java.awt.Stroke stroke)` Deprecated. This method should no longer be used (as of version 1.0.6). It is sufficient to rely on `setSeriesOutlineStroke(int, Stroke)` and `setBaseOutlineStroke(Stroke)`.
    `void` | `setPaint(java.awt.Paint paint)` Deprecated. This method should no longer be used (as of version 1.0.6). It is sufficient to rely on `setSeriesPaint(int, Paint)` and `setBasePaint(Paint)`.
    `void` | `setPlot(XYPlot plot)` Sets the plot that this renderer is assigned to.
    `void` | `setPositiveItemLabelPosition(ItemLabelPosition position)` Deprecated. This method should no longer be used (as of version 1.0.6). It is sufficient to rely on `setSeriesPositiveItemLabelPosition(int, ItemLabelPosition)` and `setBasePositiveItemLabelPosition(ItemLabelPosition)`.
    `void` | `setPositiveItemLabelPosition(ItemLabelPosition position, boolean notify)` Deprecated. This method should no longer be used (as of version 1.0.6). It is sufficient to rely on `setSeriesPositiveItemLabelPosition(int, ItemLabelPosition, boolean)` and `setBasePositiveItemLabelPosition( ItemLabelPosition, boolean)`.
    `void` | `setSeriesItemLabelFont(int series, java.awt.Font font)` Sets the item label font for a series and sends a `RendererChangeEvent` to all registered listeners.
    `void` | `setSeriesItemLabelGenerator(int series, XYItemLabelGenerator generator)` Sets the item label generator for a series and sends a `RendererChangeEvent` to all registered listeners.
    `void` | `setSeriesItemLabelPaint(int series, java.awt.Paint paint)` Sets the item label paint for a series and sends a `RendererChangeEvent` to all registered listeners.
    `void` | `setSeriesItemLabelsVisible(int series, boolean visible)` Sets a flag that controls the visibility of the item labels for a series and sends a `RendererChangeEvent` to all registered listeners.
    `void` | `setSeriesItemLabelsVisible(int series, java.lang.Boolean visible)` Sets a flag that controls the visibility of the item labels for a series.
    `void` | `setSeriesItemLabelsVisible(int series, java.lang.Boolean visible, boolean notify)` Sets the visibility of item labels for a series and, if requested, sends a `RendererChangeEvent` to all registered listeners.
    `void` | `setSeriesNegativeItemLabelPosition(int series, ItemLabelPosition position)` Sets the item label position for negative values in a series and sends a `RendererChangeEvent` to all registered listeners.
    `void` | `setSeriesNegativeItemLabelPosition(int series, ItemLabelPosition position, boolean notify)` Sets the item label position for negative values in a series and (if requested) sends a `RendererChangeEvent` to all registered listeners.
    `void` | `setSeriesOutlinePaint(int series, java.awt.Paint paint)` Sets the paint used for a series outline and sends a `RendererChangeEvent` to all registered listeners.
    `void` | `setSeriesOutlineStroke(int series, java.awt.Stroke stroke)` Sets the outline stroke used for a series and sends a `RendererChangeEvent` to all registered listeners.
    `void` | `setSeriesPaint(int series, java.awt.Paint paint)` Sets the paint used for a series and sends a `RendererChangeEvent` to all registered listeners.
    `void` | `setSeriesPositiveItemLabelPosition(int series, ItemLabelPosition position)` Sets the item label position for all positive values in a series and sends a `RendererChangeEvent` to all registered listeners.
    `void` | `setSeriesPositiveItemLabelPosition(int series, ItemLabelPosition position, boolean notify)` Sets the item label position for all positive values in a series and (if requested) sends a `RendererChangeEvent` to all registered listeners.
    `void` | `setSeriesShape(int series, java.awt.Shape shape)` Sets the shape used for a series and sends a `RendererChangeEvent` to all registered listeners.
    `void` | `setSeriesStroke(int series, java.awt.Stroke stroke)` Sets the stroke used for a series and sends a `RendererChangeEvent` to all registered listeners.
    `void` | `setSeriesToolTipGenerator(int series, XYToolTipGenerator generator)` Sets the tool tip generator for a series and sends a `RendererChangeEvent` to all registered listeners.
    `void` | `setSeriesVisible(java.lang.Boolean visible)` Deprecated. This method should no longer be used (as of version 1.0.6). It is sufficient to rely on `setSeriesVisible(int, Boolean)` and `setBaseSeriesVisible(boolean)`.
    `void` | `setSeriesVisible(java.lang.Boolean visible, boolean notify)` Deprecated. This method should no longer be used (as of version 1.0.6). It is sufficient to rely on `setSeriesVisible(int, Boolean, boolean)` and `setBaseSeriesVisible(boolean, boolean)`.
    `void` | `setSeriesVisible(int series, java.lang.Boolean visible)` Sets the flag that controls whether a series is visible and sends a `RendererChangeEvent` to all registered listeners.
    `void` | `setSeriesVisible(int series, java.lang.Boolean visible, boolean notify)` Sets the flag that controls whether a series is visible and, if requested, sends a `RendererChangeEvent` to all registered listeners.
    `void` | `setSeriesVisibleInLegend(java.lang.Boolean visible)` Deprecated. This method should no longer be used (as of version 1.0.6). It is sufficient to rely on `setSeriesVisibleInLegend(int, Boolean)` and `setBaseSeriesVisibleInLegend(boolean)`.
    `void` | `setSeriesVisibleInLegend(java.lang.Boolean visible, boolean notify)` Deprecated. This method should no longer be used (as of version 1.0.6). It is sufficient to rely on `setSeriesVisibleInLegend(int, Boolean, boolean)` and `setBaseSeriesVisibleInLegend(boolean, boolean)`.
    `void` | `setSeriesVisibleInLegend(int series, java.lang.Boolean visible)` Sets the flag that controls whether a series is visible in the legend and sends a `RendererChangeEvent` to all registered listeners.
    `void` | `setSeriesVisibleInLegend(int series, java.lang.Boolean visible, boolean notify)` Sets the flag that controls whether a series is visible in the legend and, if requested, sends a `RendererChangeEvent` to all registered listeners.
    `void` | `setShape(java.awt.Shape shape)` Deprecated. This method should no longer be used (as of version 1.0.6). It is sufficient to rely on `setSeriesShape(int, Shape)` and `setBaseShape(Shape)`.
    `void` | `setStroke(java.awt.Stroke stroke)` Deprecated. This method should no longer be used (as of version 1.0.6). It is sufficient to rely on `setSeriesStroke(int, Stroke)` and `setBaseStroke(Stroke)`.
    `void` | `setToolTipGenerator(XYToolTipGenerator generator)` Deprecated. As of version 1.0.6, this override setting should not be used. You can use the base setting instead (`setBaseToolTipGenerator(XYToolTipGenerator)`).
    `void` | `setURLGenerator(XYURLGenerator urlGenerator)` Sets the URL generator for HTML image maps.

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

      `getLegendItems`

- - ### Method Detail

    - #### getPlot

          XYPlot getPlot()

      Returns the plot that this renderer has been assigned to.
      Returns:
        The plot.

    - #### setPlot

          void setPlot(XYPlot plot)

      Sets the plot that this renderer is assigned to. This method will be called by the plot class...you do not need to call it yourself.
      Parameters:
        `plot` - the plot.

    - #### getPassCount

          int getPassCount()

      Returns the number of passes through the data required by the renderer.
      Returns:
        The pass count.

    - #### findDomainBounds

          Range findDomainBounds(XYDataset dataset)

      Returns the lower and upper bounds (range) of the x-values in the specified dataset.
      Parameters:
        `dataset` - the dataset (`null` permitted).
      Returns:
        The range.

    - #### findRangeBounds

          Range findRangeBounds(XYDataset dataset)

      Returns the lower and upper bounds (range) of the y-values in the specified dataset. The implementation of this method will take into account the presentation used by the renderers (for example, a renderer that "stacks" values will return a bigger range than a renderer that doesn't).
      Parameters:
        `dataset` - the dataset (`null` permitted).
      Returns:
        The range (or `null` if the dataset is `null` or empty).

    - #### addChangeListener

          void addChangeListener(RendererChangeListener listener)

      Add a renderer change listener.
      Parameters:
        `listener` - the listener.
      See Also:
        `removeChangeListener(RendererChangeListener)`

    - #### removeChangeListener

          void removeChangeListener(RendererChangeListener listener)

      Removes a change listener.
      Parameters:
        `listener` - the listener.
      See Also:
        `addChangeListener(RendererChangeListener)`

    - #### getItemVisible

          boolean getItemVisible(int series,
                                 int item)

      Returns a boolean that indicates whether or not the specified item should be drawn (this is typically used to hide an entire series).
      Parameters:
        `series` - the series index.
        `item` - the item index.
      Returns:
        A boolean.

    - #### isSeriesVisible

          boolean isSeriesVisible(int series)

      Returns a boolean that indicates whether or not the specified series should be drawn (this is typically used to hide an entire series).
      Parameters:
        `series` - the series index.
      Returns:
        A boolean.

    - #### getSeriesVisible

          java.lang.Boolean getSeriesVisible(int series)

      Returns the flag that controls whether a series is visible.
      Parameters:
        `series` - the series index (zero-based).
      Returns:
        The flag (possibly `null`).
      See Also:
        `setSeriesVisible(int, Boolean)`

    - #### setSeriesVisible

          void setSeriesVisible(int series,
                                java.lang.Boolean visible)

      Sets the flag that controls whether a series is visible and sends a `RendererChangeEvent` to all registered listeners.
      Parameters:
        `series` - the series index (zero-based).
        `visible` - the flag (`null` permitted).
      See Also:
        `getSeriesVisible(int)`

    - #### setSeriesVisible

          void setSeriesVisible(int series,
                                java.lang.Boolean visible,
                                boolean notify)

      Sets the flag that controls whether a series is visible and, if requested, sends a `RendererChangeEvent` to all registered listeners.
      Parameters:
        `series` - the series index.
        `visible` - the flag (`null` permitted).
        `notify` - notify listeners?
      See Also:
        `getSeriesVisible(int)`

    - #### getBaseSeriesVisible

          boolean getBaseSeriesVisible()

      Returns the base visibility for all series.
      Returns:
        The base visibility.
      See Also:
        `setBaseSeriesVisible(boolean)`

    - #### setBaseSeriesVisible

          void setBaseSeriesVisible(boolean visible)

      Sets the base visibility and sends a `RendererChangeEvent` to all registered listeners.
      Parameters:
        `visible` - the flag.
      See Also:
        `getBaseSeriesVisible()`

    - #### setBaseSeriesVisible

          void setBaseSeriesVisible(boolean visible,
                                    boolean notify)

      Sets the base visibility and, if requested, sends a `RendererChangeEvent` to all registered listeners.
      Parameters:
        `visible` - the visibility.
        `notify` - notify listeners?
      See Also:
        `getBaseSeriesVisible()`

    - #### isSeriesVisibleInLegend

          boolean isSeriesVisibleInLegend(int series)

      Returns `true` if the series should be shown in the legend, and `false` otherwise.
      Parameters:
        `series` - the series index.
      Returns:
        A boolean.

    - #### getSeriesVisibleInLegend

          java.lang.Boolean getSeriesVisibleInLegend(int series)

      Returns the flag that controls whether a series is visible in the legend. This method returns only the "per series" settings - to incorporate the override and base settings as well, you need to use the `isSeriesVisibleInLegend(int)` method.
      Parameters:
        `series` - the series index (zero-based).
      Returns:
        The flag (possibly `null`).
      See Also:
        `setSeriesVisibleInLegend(int, Boolean)`

    - #### setSeriesVisibleInLegend

          void setSeriesVisibleInLegend(int series,
                                        java.lang.Boolean visible)

      Sets the flag that controls whether a series is visible in the legend and sends a `RendererChangeEvent` to all registered listeners.
      Parameters:
        `series` - the series index (zero-based).
        `visible` - the flag (`null` permitted).
      See Also:
        `getSeriesVisibleInLegend(int)`

    - #### setSeriesVisibleInLegend

          void setSeriesVisibleInLegend(int series,
                                        java.lang.Boolean visible,
                                        boolean notify)

      Sets the flag that controls whether a series is visible in the legend and, if requested, sends a `RendererChangeEvent` to all registered listeners.
      Parameters:
        `series` - the series index.
        `visible` - the flag (`null` permitted).
        `notify` - notify listeners?
      See Also:
        `getSeriesVisibleInLegend(int)`

    - #### getBaseSeriesVisibleInLegend

          boolean getBaseSeriesVisibleInLegend()

      Returns the base visibility in the legend for all series.
      Returns:
        The base visibility.
      See Also:
        `setBaseSeriesVisibleInLegend(boolean)`

    - #### setBaseSeriesVisibleInLegend

          void setBaseSeriesVisibleInLegend(boolean visible)

      Sets the base visibility in the legend and sends a `RendererChangeEvent` to all registered listeners.
      Parameters:
        `visible` - the flag.
      See Also:
        `getBaseSeriesVisibleInLegend()`

    - #### setBaseSeriesVisibleInLegend

          void setBaseSeriesVisibleInLegend(boolean visible,
                                            boolean notify)

      Sets the base visibility in the legend and, if requested, sends a `RendererChangeEvent` to all registered listeners.
      Parameters:
        `visible` - the visibility.
        `notify` - notify listeners?
      See Also:
        `getBaseSeriesVisibleInLegend()`

    - #### getItemPaint

          java.awt.Paint getItemPaint(int row,
                                      int column)

      Returns the paint used to color data items as they are drawn.
      Parameters:
        `row` - the row (or series) index (zero-based).
        `column` - the column (or category) index (zero-based).
      Returns:
        The paint (never `null`).

    - #### getSeriesPaint

          java.awt.Paint getSeriesPaint(int series)

      Returns the paint used to color an item drawn by the renderer.
      Parameters:
        `series` - the series index (zero-based).
      Returns:
        The paint (possibly `null`).
      See Also:
        `setSeriesPaint(int, Paint)`

    - #### setSeriesPaint

          void setSeriesPaint(int series,
                              java.awt.Paint paint)

      Sets the paint used for a series and sends a `RendererChangeEvent` to all registered listeners.
      Parameters:
        `series` - the series index (zero-based).
        `paint` - the paint (`null` permitted).
      See Also:
        `getSeriesPaint(int)`

    - #### getBasePaint

          java.awt.Paint getBasePaint()

      Returns the base (or default) paint.
      Returns:
        The base paint (never `null`).
      See Also:
        `setBasePaint(Paint)`

    - #### setBasePaint

          void setBasePaint(java.awt.Paint paint)

      Sets the base paint and sends a `RendererChangeEvent` to all registered listeners.
      Parameters:
        `paint` - the paint (`null` not permitted).
      See Also:
        `getBasePaint()`

    - #### getItemOutlinePaint

          java.awt.Paint getItemOutlinePaint(int row,
                                             int column)

      Returns the paint used to outline data items as they are drawn.
      Parameters:
        `row` - the row (or series) index (zero-based).
        `column` - the column (or category) index (zero-based).
      Returns:
        The paint (never `null`).

    - #### getSeriesOutlinePaint

          java.awt.Paint getSeriesOutlinePaint(int series)

      Returns the paint used to outline an item drawn by the renderer.
      Parameters:
        `series` - the series (zero-based index).
      Returns:
        The paint (possibly `null`).
      See Also:
        `setSeriesOutlinePaint(int, Paint)`

    - #### setSeriesOutlinePaint

          void setSeriesOutlinePaint(int series,
                                     java.awt.Paint paint)

      Sets the paint used for a series outline and sends a `RendererChangeEvent` to all registered listeners.
      Parameters:
        `series` - the series index (zero-based).
        `paint` - the paint (`null` permitted).
      See Also:
        `getSeriesOutlinePaint(int)`

    - #### getBaseOutlinePaint

          java.awt.Paint getBaseOutlinePaint()

      Returns the base (or default) outline paint.
      Returns:
        The paint (never `null`).
      See Also:
        `setBaseOutlinePaint(Paint)`

    - #### setBaseOutlinePaint

          void setBaseOutlinePaint(java.awt.Paint paint)

      Sets the base outline paint and sends a `RendererChangeEvent` to all registered listeners.
      Parameters:
        `paint` - the paint (`null` not permitted).
      See Also:
        `getBaseOutlinePaint()`

    - #### getItemStroke

          java.awt.Stroke getItemStroke(int row,
                                        int column)

      Returns the stroke used to draw data items.
      Parameters:
        `row` - the row (or series) index (zero-based).
        `column` - the column (or category) index (zero-based).
      Returns:
        The stroke (never `null`).

    - #### getSeriesStroke

          java.awt.Stroke getSeriesStroke(int series)

      Returns the stroke used to draw the items in a series.
      Parameters:
        `series` - the series (zero-based index).
      Returns:
        The stroke (possibly `null`).
      See Also:
        `setSeriesStroke(int, Stroke)`

    - #### setSeriesStroke

          void setSeriesStroke(int series,
                               java.awt.Stroke stroke)

      Sets the stroke used for a series and sends a `RendererChangeEvent` to all registered listeners.
      Parameters:
        `series` - the series index (zero-based).
        `stroke` - the stroke (`null` permitted).
      See Also:
        `getSeriesStroke(int)`

    - #### getBaseStroke

          java.awt.Stroke getBaseStroke()

      Returns the base (or default) stroke.
      Returns:
        The base stroke (never `null`).
      See Also:
        `setBaseStroke(Stroke)`

    - #### setBaseStroke

          void setBaseStroke(java.awt.Stroke stroke)

      Sets the base stroke and sends a `RendererChangeEvent` to all registered listeners.
      Parameters:
        `stroke` - the stroke (`null` not permitted).
      See Also:
        `getBaseStroke()`

    - #### getItemOutlineStroke

          java.awt.Stroke getItemOutlineStroke(int row,
                                               int column)

      Returns the stroke used to outline data items. The default implementation passes control to the lookupSeriesOutlineStroke method. You can override this method if you require different behaviour.
      Parameters:
        `row` - the row (or series) index (zero-based).
        `column` - the column (or category) index (zero-based).
      Returns:
        The stroke (never `null`).

    - #### getSeriesOutlineStroke

          java.awt.Stroke getSeriesOutlineStroke(int series)

      Returns the stroke used to outline the items in a series.
      Parameters:
        `series` - the series (zero-based index).
      Returns:
        The stroke (possibly `null`).
      See Also:
        `setSeriesOutlineStroke(int, Stroke)`

    - #### setSeriesOutlineStroke

          void setSeriesOutlineStroke(int series,
                                      java.awt.Stroke stroke)

      Sets the outline stroke used for a series and sends a `RendererChangeEvent` to all registered listeners.
      Parameters:
        `series` - the series index (zero-based).
        `stroke` - the stroke (`null` permitted).
      See Also:
        `getSeriesOutlineStroke(int)`

    - #### getBaseOutlineStroke

          java.awt.Stroke getBaseOutlineStroke()

      Returns the base outline stroke.
      Returns:
        The stroke (never `null`).
      See Also:
        `setBaseOutlineStroke(Stroke)`

    - #### setBaseOutlineStroke

          void setBaseOutlineStroke(java.awt.Stroke stroke)

      Sets the base outline stroke and sends a `RendererChangeEvent` to all registered listeners.
      Parameters:
        `stroke` - the stroke (`null` not permitted).
      See Also:
        `getBaseOutlineStroke()`

    - #### getItemShape

          java.awt.Shape getItemShape(int row,
                                      int column)

      Returns a shape used to represent a data item.
      Parameters:
        `row` - the row (or series) index (zero-based).
        `column` - the column (or category) index (zero-based).
      Returns:
        The shape (never `null`).

    - #### getSeriesShape

          java.awt.Shape getSeriesShape(int series)

      Returns a shape used to represent the items in a series.
      Parameters:
        `series` - the series (zero-based index).
      Returns:
        The shape (possibly `null`).
      See Also:
        `setSeriesShape(int, Shape)`

    - #### setSeriesShape

          void setSeriesShape(int series,
                              java.awt.Shape shape)

      Sets the shape used for a series and sends a `RendererChangeEvent` to all registered listeners.
      Parameters:
        `series` - the series index (zero-based).
        `shape` - the shape (`null` permitted).
      See Also:
        `getSeriesShape(int)`

    - #### getBaseShape

          java.awt.Shape getBaseShape()

      Returns the base shape.
      Returns:
        The shape (never `null`).
      See Also:
        `setBaseShape(Shape)`

    - #### setBaseShape

          void setBaseShape(java.awt.Shape shape)

      Sets the base shape and sends a `RendererChangeEvent` to all registered listeners.
      Parameters:
        `shape` - the shape (`null` not permitted).
      See Also:
        `getBaseShape()`

    - #### getLegendItem

          LegendItem getLegendItem(int datasetIndex,
                                   int series)

      Returns a legend item for a series from a dataset.
      Parameters:
        `datasetIndex` - the dataset index.
        `series` - the series (zero-based index).
      Returns:
        The legend item (possibly `null`).

    - #### getLegendItemLabelGenerator

          XYSeriesLabelGenerator getLegendItemLabelGenerator()

      Returns the legend item label generator.
      Returns:
        The legend item label generator (never `null`).
      See Also:
        `setLegendItemLabelGenerator(XYSeriesLabelGenerator)`

    - #### setLegendItemLabelGenerator

          void setLegendItemLabelGenerator(XYSeriesLabelGenerator generator)

      Sets the legend item label generator and sends a `RendererChangeEvent` to all registered listeners.
      Parameters:
        `generator` - the generator (`null` not permitted).

    - #### getToolTipGenerator

          XYToolTipGenerator getToolTipGenerator(int row,
                                                 int column)

      Returns the tool tip generator for a data item.
      Parameters:
        `row` - the row index (zero based).
        `column` - the column index (zero based).
      Returns:
        The generator (possibly `null`).

    - #### getSeriesToolTipGenerator

          XYToolTipGenerator getSeriesToolTipGenerator(int series)

      Returns the tool tip generator for a series.
      Parameters:
        `series` - the series index (zero based).
      Returns:
        The generator (possibly `null`).
      See Also:
        `setSeriesToolTipGenerator(int, XYToolTipGenerator)`

    - #### setSeriesToolTipGenerator

          void setSeriesToolTipGenerator(int series,
                                         XYToolTipGenerator generator)

      Sets the tool tip generator for a series and sends a `RendererChangeEvent` to all registered listeners.
      Parameters:
        `series` - the series index (zero based).
        `generator` - the generator (`null` permitted).
      See Also:
        `getSeriesToolTipGenerator(int)`

    - #### getBaseToolTipGenerator

          XYToolTipGenerator getBaseToolTipGenerator()

      Returns the base tool tip generator.
      Returns:
        The generator (possibly `null`).
      See Also:
        `setBaseToolTipGenerator(XYToolTipGenerator)`

    - #### setBaseToolTipGenerator

          void setBaseToolTipGenerator(XYToolTipGenerator generator)

      Sets the base tool tip generator and sends a `RendererChangeEvent` to all registered listeners.
      Parameters:
        `generator` - the generator (`null` permitted).
      See Also:
        `getBaseToolTipGenerator()`

    - #### getURLGenerator

          XYURLGenerator getURLGenerator()

      Returns the URL generator for HTML image maps.
      Returns:
        The URL generator (possibly null).

    - #### setURLGenerator

          void setURLGenerator(XYURLGenerator urlGenerator)

      Sets the URL generator for HTML image maps.
      Parameters:
        `urlGenerator` - the URL generator (null permitted).

    - #### isItemLabelVisible

          boolean isItemLabelVisible(int row,
                                     int column)

      Returns `true` if an item label is visible, and `false` otherwise.
      Parameters:
        `row` - the row index (zero-based).
        `column` - the column index (zero-based).
      Returns:
        A boolean.

    - #### isSeriesItemLabelsVisible

          boolean isSeriesItemLabelsVisible(int series)

      Returns `true` if the item labels for a series are visible, and `false` otherwise.
      Parameters:
        `series` - the series index (zero-based).
      Returns:
        A boolean.

    - #### setSeriesItemLabelsVisible

          void setSeriesItemLabelsVisible(int series,
                                          boolean visible)

      Sets a flag that controls the visibility of the item labels for a series and sends a `RendererChangeEvent` to all registered listeners.
      Parameters:
        `series` - the series index (zero-based).
        `visible` - the flag.
      See Also:
        `isSeriesItemLabelsVisible(int)`

    - #### setSeriesItemLabelsVisible

          void setSeriesItemLabelsVisible(int series,
                                          java.lang.Boolean visible)

      Sets a flag that controls the visibility of the item labels for a series.
      Parameters:
        `series` - the series index (zero-based).
        `visible` - the flag (`null` permitted).
      See Also:
        `isSeriesItemLabelsVisible(int)`

    - #### setSeriesItemLabelsVisible

          void setSeriesItemLabelsVisible(int series,
                                          java.lang.Boolean visible,
                                          boolean notify)

      Sets the visibility of item labels for a series and, if requested, sends a `RendererChangeEvent` to all registered listeners.
      Parameters:
        `series` - the series index (zero-based).
        `visible` - the visible flag.
        `notify` - a flag that controls whether or not listeners are notified.
      See Also:
        `isSeriesItemLabelsVisible(int)`

    - #### getBaseItemLabelsVisible

          java.lang.Boolean getBaseItemLabelsVisible()

      Returns the base setting for item label visibility.
      Returns:
        A flag (possibly `null`).
      See Also:
        `setBaseItemLabelsVisible(boolean)`

    - #### setBaseItemLabelsVisible

          void setBaseItemLabelsVisible(boolean visible)

      Sets the base flag that controls whether or not item labels are visible.
      Parameters:
        `visible` - the flag.
      See Also:
        `getBaseItemLabelsVisible()`

    - #### setBaseItemLabelsVisible

          void setBaseItemLabelsVisible(java.lang.Boolean visible)

      Sets the base setting for item label visibility.
      Parameters:
        `visible` - the flag (`null` permitted).
      See Also:
        `getBaseItemLabelsVisible()`

    - #### setBaseItemLabelsVisible

          void setBaseItemLabelsVisible(java.lang.Boolean visible,
                                        boolean notify)

      Sets the base visibility for item labels and, if requested, sends a `RendererChangeEvent` to all registered listeners.
      Parameters:
        `visible` - the visibility flag.
        `notify` - a flag that controls whether or not listeners are notified.
      See Also:
        `getBaseItemLabelsVisible()`

    - #### getItemLabelGenerator

          XYItemLabelGenerator getItemLabelGenerator(int row,
                                                     int column)

      Returns the item label generator for a data item.
      Parameters:
        `row` - the row index (zero based).
        `column` - the column index (zero based).
      Returns:
        The generator (possibly `null`).

    - #### getSeriesItemLabelGenerator

          XYItemLabelGenerator getSeriesItemLabelGenerator(int series)

      Returns the item label generator for a series.
      Parameters:
        `series` - the series index (zero based).
      Returns:
        The generator (possibly `null`).
      See Also:
        `setSeriesItemLabelGenerator(int, XYItemLabelGenerator)`

    - #### setSeriesItemLabelGenerator

          void setSeriesItemLabelGenerator(int series,
                                           XYItemLabelGenerator generator)

      Sets the item label generator for a series and sends a `RendererChangeEvent` to all registered listeners.
      Parameters:
        `series` - the series index (zero based).
        `generator` - the generator (`null` permitted).
      See Also:
        `getSeriesItemLabelGenerator(int)`

    - #### getBaseItemLabelGenerator

          XYItemLabelGenerator getBaseItemLabelGenerator()

      Returns the base item label generator.
      Returns:
        The generator (possibly `null`).
      See Also:
        `setBaseItemLabelGenerator(XYItemLabelGenerator)`

    - #### setBaseItemLabelGenerator

          void setBaseItemLabelGenerator(XYItemLabelGenerator generator)

      Sets the base item label generator and sends a `RendererChangeEvent` to all registered listeners.
      Parameters:
        `generator` - the generator (`null` permitted).
      See Also:
        `getBaseItemLabelGenerator()`

    - #### getItemLabelFont

          java.awt.Font getItemLabelFont(int row,
                                         int column)

      Returns the font for an item label.
      Parameters:
        `row` - the row index (zero-based).
        `column` - the column index (zero-based).
      Returns:
        The font (never `null`).

    - #### getSeriesItemLabelFont

          java.awt.Font getSeriesItemLabelFont(int series)

      Returns the font for all the item labels in a series.
      Parameters:
        `series` - the series index (zero-based).
      Returns:
        The font (possibly `null`).

    - #### setSeriesItemLabelFont

          void setSeriesItemLabelFont(int series,
                                      java.awt.Font font)

      Sets the item label font for a series and sends a `RendererChangeEvent` to all registered listeners.
      Parameters:
        `series` - the series index (zero-based).
        `font` - the font (`null` permitted).
      See Also:
        `getSeriesItemLabelFont(int)`

    - #### getBaseItemLabelFont

          java.awt.Font getBaseItemLabelFont()

      Returns the base item label font (this is used when no other font setting is available).
      Returns:
        The font (`never` null).
      See Also:
        `setBaseItemLabelFont(Font)`

    - #### setBaseItemLabelFont

          void setBaseItemLabelFont(java.awt.Font font)

      Sets the base item label font and sends a `RendererChangeEvent` to all registered listeners.
      Parameters:
        `font` - the font (`null` not permitted).
      See Also:
        `getBaseItemLabelFont()`

    - #### getItemLabelPaint

          java.awt.Paint getItemLabelPaint(int row,
                                           int column)

      Returns the paint used to draw an item label.
      Parameters:
        `row` - the row index (zero based).
        `column` - the column index (zero based).
      Returns:
        The paint (never `null`).

    - #### getSeriesItemLabelPaint

          java.awt.Paint getSeriesItemLabelPaint(int series)

      Returns the paint used to draw the item labels for a series.
      Parameters:
        `series` - the series index (zero based).
      Returns:
        The paint (possibly `null`).
      See Also:
        `setSeriesItemLabelPaint(int, Paint)`

    - #### setSeriesItemLabelPaint

          void setSeriesItemLabelPaint(int series,
                                       java.awt.Paint paint)

      Sets the item label paint for a series and sends a `RendererChangeEvent` to all registered listeners.
      Parameters:
        `series` - the series (zero based index).
        `paint` - the paint (`null` permitted).
      See Also:
        `getSeriesItemLabelPaint(int)`

    - #### getBaseItemLabelPaint

          java.awt.Paint getBaseItemLabelPaint()

      Returns the base item label paint.
      Returns:
        The paint (never `null`).

    - #### setBaseItemLabelPaint

          void setBaseItemLabelPaint(java.awt.Paint paint)

      Sets the base item label paint and sends a `RendererChangeEvent` to all registered listeners.
      Parameters:
        `paint` - the paint (`null` not permitted).

    - #### getPositiveItemLabelPosition

          ItemLabelPosition getPositiveItemLabelPosition(int row,
                                                         int column)

      Returns the item label position for positive values.
      Parameters:
        `row` - the row index (zero-based).
        `column` - the column index (zero-based).
      Returns:
        The item label position (never `null`).

    - #### getSeriesPositiveItemLabelPosition

          ItemLabelPosition getSeriesPositiveItemLabelPosition(int series)

      Returns the item label position for all positive values in a series.
      Parameters:
        `series` - the series index (zero-based).
      Returns:
        The item label position (never `null`).

    - #### setSeriesPositiveItemLabelPosition

          void setSeriesPositiveItemLabelPosition(int series,
                                                  ItemLabelPosition position)

      Sets the item label position for all positive values in a series and sends a `RendererChangeEvent` to all registered listeners.
      Parameters:
        `series` - the series index (zero-based).
        `position` - the position (`null` permitted).

    - #### setSeriesPositiveItemLabelPosition

          void setSeriesPositiveItemLabelPosition(int series,
                                                  ItemLabelPosition position,
                                                  boolean notify)

      Sets the item label position for all positive values in a series and (if requested) sends a `RendererChangeEvent` to all registered listeners.
      Parameters:
        `series` - the series index (zero-based).
        `position` - the position (`null` permitted).
        `notify` - notify registered listeners?

    - #### getBasePositiveItemLabelPosition

          ItemLabelPosition getBasePositiveItemLabelPosition()

      Returns the base positive item label position.
      Returns:
        The position (never `null`).

    - #### setBasePositiveItemLabelPosition

          void setBasePositiveItemLabelPosition(ItemLabelPosition position)

      Sets the base positive item label position.
      Parameters:
        `position` - the position (`null` not permitted).

    - #### setBasePositiveItemLabelPosition

          void setBasePositiveItemLabelPosition(ItemLabelPosition position,
                                                boolean notify)

      Sets the base positive item label position and, if requested, sends a `RendererChangeEvent` to all registered listeners.
      Parameters:
        `position` - the position (`null` not permitted).
        `notify` - notify registered listeners?

    - #### getNegativeItemLabelPosition

          ItemLabelPosition getNegativeItemLabelPosition(int row,
                                                         int column)

      Returns the item label position for negative values. This method can be overridden to provide customisation of the item label position for individual data items.
      Parameters:
        `row` - the row index (zero-based).
        `column` - the column (zero-based).
      Returns:
        The item label position (never `null`).

    - #### getSeriesNegativeItemLabelPosition

          ItemLabelPosition getSeriesNegativeItemLabelPosition(int series)

      Returns the item label position for all negative values in a series.
      Parameters:
        `series` - the series index (zero-based).
      Returns:
        The item label position (never `null`).

    - #### setSeriesNegativeItemLabelPosition

          void setSeriesNegativeItemLabelPosition(int series,
                                                  ItemLabelPosition position)

      Sets the item label position for negative values in a series and sends a `RendererChangeEvent` to all registered listeners.
      Parameters:
        `series` - the series index (zero-based).
        `position` - the position (`null` permitted).

    - #### setSeriesNegativeItemLabelPosition

          void setSeriesNegativeItemLabelPosition(int series,
                                                  ItemLabelPosition position,
                                                  boolean notify)

      Sets the item label position for negative values in a series and (if requested) sends a `RendererChangeEvent` to all registered listeners.
      Parameters:
        `series` - the series index (zero-based).
        `position` - the position (`null` permitted).
        `notify` - notify registered listeners?

    - #### getBaseNegativeItemLabelPosition

          ItemLabelPosition getBaseNegativeItemLabelPosition()

      Returns the base item label position for negative values.
      Returns:
        The position (never `null`).

    - #### setBaseNegativeItemLabelPosition

          void setBaseNegativeItemLabelPosition(ItemLabelPosition position)

      Sets the base item label position for negative values and sends a `RendererChangeEvent` to all registered listeners.
      Parameters:
        `position` - the position (`null` not permitted).

    - #### setBaseNegativeItemLabelPosition

          void setBaseNegativeItemLabelPosition(ItemLabelPosition position,
                                                boolean notify)

      Sets the base negative item label position and, if requested, sends a `RendererChangeEvent` to all registered listeners.
      Parameters:
        `position` - the position (`null` not permitted).
        `notify` - notify registered listeners?

    - #### addAnnotation

          void addAnnotation(XYAnnotation annotation)

      Adds an annotation and sends a `RendererChangeEvent` to all registered listeners. The annotation is added to the foreground layer.
      Parameters:
        `annotation` - the annotation (`null` not permitted).

    - #### addAnnotation

          void addAnnotation(XYAnnotation annotation,
                             Layer layer)

      Adds an annotation to the specified layer.
      Parameters:
        `annotation` - the annotation (`null` not permitted).
        `layer` - the layer (`null` not permitted).

    - #### removeAnnotation

          boolean removeAnnotation(XYAnnotation annotation)

      Removes the specified annotation and sends a `RendererChangeEvent` to all registered listeners.
      Parameters:
        `annotation` - the annotation to remove (`null` not permitted).
      Returns:
        A boolean to indicate whether or not the annotation was successfully removed.

    - #### removeAnnotations

          void removeAnnotations()

      Removes all annotations and sends a `RendererChangeEvent` to all registered listeners.

    - #### drawAnnotations

          void drawAnnotations(java.awt.Graphics2D g2,
                               java.awt.geom.Rectangle2D dataArea,
                               ValueAxis domainAxis,
                               ValueAxis rangeAxis,
                               Layer layer,
                               PlotRenderingInfo info)

      Draws all the annotations for the specified layer.
      Parameters:
        `g2` - the graphics device.
        `dataArea` - the data area.
        `domainAxis` - the domain axis.
        `rangeAxis` - the range axis.
        `layer` - the layer.
        `info` - the plot rendering info.

    - #### initialise

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

      Initialises the renderer then returns the number of 'passes' through the data that the renderer will require (usually just one). This method will be called before the first item is rendered, giving the renderer an opportunity to initialise any state information it wants to maintain. The renderer can do nothing if it chooses.
      Parameters:
        `g2` - the graphics device.
        `dataArea` - the area inside the axes.
        `plot` - the plot.
        `dataset` - the dataset.
        `info` - an optional info collection object to return data back to the caller.
      Returns:
        The number of passes the renderer requires.

    - #### drawItem

          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)

      Called for each item to be plotted.

      The `XYPlot` can make multiple passes through the dataset, depending on the value returned by the renderer's initialise() method.

      Parameters:
        `g2` - the graphics device.
        `state` - the renderer state.
        `dataArea` - the area within which the data is being rendered.
        `info` - collects drawing info.
        `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.

    - #### fillDomainGridBand

          void fillDomainGridBand(java.awt.Graphics2D g2,
                                  XYPlot plot,
                                  ValueAxis axis,
                                  java.awt.geom.Rectangle2D dataArea,
                                  double start,
                                  double end)

      Fills a band between two values on the axis. This can be used to color bands between the grid lines.
      Parameters:
        `g2` - the graphics device.
        `plot` - the plot.
        `axis` - the domain axis.
        `dataArea` - the data area.
        `start` - the start value.
        `end` - the end value.

    - #### fillRangeGridBand

          void fillRangeGridBand(java.awt.Graphics2D g2,
                                 XYPlot plot,
                                 ValueAxis axis,
                                 java.awt.geom.Rectangle2D dataArea,
                                 double start,
                                 double end)

      Fills a band between two values on the range axis. This can be used to color bands between the grid lines.
      Parameters:
        `g2` - the graphics device.
        `plot` - the plot.
        `axis` - the range axis.
        `dataArea` - the data area.
        `start` - the start value.
        `end` - the end value.

    - #### drawDomainGridLine

          void drawDomainGridLine(java.awt.Graphics2D g2,
                                  XYPlot plot,
                                  ValueAxis axis,
                                  java.awt.geom.Rectangle2D dataArea,
                                  double value)

      Draws a grid line against the domain axis.
      Parameters:
        `g2` - the graphics device.
        `plot` - the plot.
        `axis` - the value axis.
        `dataArea` - the area for plotting data (not yet adjusted for any 3D effect).
        `value` - the value.

    - #### drawRangeLine

          void drawRangeLine(java.awt.Graphics2D g2,
                             XYPlot plot,
                             ValueAxis axis,
                             java.awt.geom.Rectangle2D dataArea,
                             double value,
                             java.awt.Paint paint,
                             java.awt.Stroke stroke)

      Draws a line perpendicular to the range axis.
      Parameters:
        `g2` - the graphics device.
        `plot` - the plot.
        `axis` - the value axis.
        `dataArea` - the area for plotting data.
        `value` - the data value.
        `paint` - the paint (`null` not permitted).
        `stroke` - the stroke (`null` not permitted).

    - #### drawDomainMarker

          void drawDomainMarker(java.awt.Graphics2D g2,
                                XYPlot plot,
                                ValueAxis axis,
                                Marker marker,
                                java.awt.geom.Rectangle2D dataArea)

      Draws the specified `marker` against the domain axis.
      Parameters:
        `g2` - the graphics device.
        `plot` - the plot.
        `axis` - the value axis.
        `marker` - the marker.
        `dataArea` - the axis data area.

    - #### drawRangeMarker

          void drawRangeMarker(java.awt.Graphics2D g2,
                               XYPlot plot,
                               ValueAxis axis,
                               Marker marker,
                               java.awt.geom.Rectangle2D dataArea)

      Draws a horizontal line across the chart to represent a 'range marker'.
      Parameters:
        `g2` - the graphics device.
        `plot` - the plot.
        `axis` - the value axis.
        `marker` - the marker line.
        `dataArea` - the axis data area.

    - #### getSeriesVisible

          java.lang.Boolean getSeriesVisible()

      Deprecated. This method should no longer be used (as of version 1.0.6). It is sufficient to rely on `getSeriesVisible(int)` and `getBaseSeriesVisible()`.
      Returns the flag that controls the visibility of ALL series. This flag overrides the per series and default settings - you must set it to `null` if you want the other settings to apply.
      Returns:
        The flag (possibly `null`).

    - #### setSeriesVisible

          void setSeriesVisible(java.lang.Boolean visible)

      Deprecated. This method should no longer be used (as of version 1.0.6). It is sufficient to rely on `setSeriesVisible(int, Boolean)` and `setBaseSeriesVisible(boolean)`.
      Sets the flag that controls the visibility of ALL series and sends a `RendererChangeEvent` to all registered listeners. This flag overrides the per series and default settings - you must set it to `null` if you want the other settings to apply.
      Parameters:
        `visible` - the flag (`null` permitted).

    - #### setSeriesVisible

          void setSeriesVisible(java.lang.Boolean visible,
                                boolean notify)

      Deprecated. This method should no longer be used (as of version 1.0.6). It is sufficient to rely on `setSeriesVisible(int, Boolean, boolean)` and `setBaseSeriesVisible(boolean, boolean)`.
      Sets the flag that controls the visibility of ALL series and sends a `RendererChangeEvent` to all registered listeners. This flag overrides the per series and default settings - you must set it to `null` if you want the other settings to apply.
      Parameters:
        `visible` - the flag (`null` permitted).
        `notify` - notify listeners?

    - #### getSeriesVisibleInLegend

          java.lang.Boolean getSeriesVisibleInLegend()

      Deprecated. This method should no longer be used (as of version 1.0.6). It is sufficient to rely on `getSeriesVisibleInLegend(int)` and `getBaseSeriesVisibleInLegend()`.
      Returns the flag that controls the visibility of ALL series in the legend. This flag overrides the per series and default settings - you must set it to `null` if you want the other settings to apply.
      Returns:
        The flag (possibly `null`).

    - #### setSeriesVisibleInLegend

          void setSeriesVisibleInLegend(java.lang.Boolean visible)

      Deprecated. This method should no longer be used (as of version 1.0.6). It is sufficient to rely on `setSeriesVisibleInLegend(int, Boolean)` and `setBaseSeriesVisibleInLegend(boolean)`.
      Sets the flag that controls the visibility of ALL series in the legend and sends a `RendererChangeEvent` to all registered listeners. This flag overrides the per series and default settings - you must set it to `null` if you want the other settings to apply.
      Parameters:
        `visible` - the flag (`null` permitted).

    - #### setSeriesVisibleInLegend

          void setSeriesVisibleInLegend(java.lang.Boolean visible,
                                        boolean notify)

      Deprecated. This method should no longer be used (as of version 1.0.6). It is sufficient to rely on `setSeriesVisibleInLegend(int, Boolean, boolean)` and `setBaseSeriesVisibleInLegend(boolean, boolean)`.
      Sets the flag that controls the visibility of ALL series in the legend and sends a `RendererChangeEvent` to all registered listeners. This flag overrides the per series and default settings - you must set it to `null` if you want the other settings to apply.
      Parameters:
        `visible` - the flag (`null` permitted).
        `notify` - notify listeners?

    - #### setPaint

          void setPaint(java.awt.Paint paint)

      Deprecated. This method should no longer be used (as of version 1.0.6). It is sufficient to rely on `setSeriesPaint(int, Paint)` and `setBasePaint(Paint)`.
      Sets the paint to be used for ALL series, and sends a `RendererChangeEvent` to all registered listeners. If this is `null`, the renderer will use the paint for the series.
      Parameters:
        `paint` - the paint (`null` permitted).

    - #### setOutlinePaint

          void setOutlinePaint(java.awt.Paint paint)

      Deprecated. This method should no longer be used (as of version 1.0.6). It is sufficient to rely on `setSeriesOutlinePaint(int, Paint)` and `setBaseOutlinePaint(Paint)`.
      Sets the outline paint for ALL series (optional).
      Parameters:
        `paint` - the paint (`null` permitted).

    - #### setStroke

          void setStroke(java.awt.Stroke stroke)

      Deprecated. This method should no longer be used (as of version 1.0.6). It is sufficient to rely on `setSeriesStroke(int, Stroke)` and `setBaseStroke(Stroke)`.
      Sets the stroke for ALL series and sends a `RendererChangeEvent` to all registered listeners.
      Parameters:
        `stroke` - the stroke (`null` permitted).

    - #### setOutlineStroke

          void setOutlineStroke(java.awt.Stroke stroke)

      Deprecated. This method should no longer be used (as of version 1.0.6). It is sufficient to rely on `setSeriesOutlineStroke(int, Stroke)` and `setBaseOutlineStroke(Stroke)`.
      Sets the outline stroke for ALL series and sends a `RendererChangeEvent` to all registered listeners.
      Parameters:
        `stroke` - the stroke (`null` permitted).

    - #### setShape

          void setShape(java.awt.Shape shape)

      Deprecated. This method should no longer be used (as of version 1.0.6). It is sufficient to rely on `setSeriesShape(int, Shape)` and `setBaseShape(Shape)`.
      Sets the shape for ALL series (optional) and sends a `RendererChangeEvent` to all registered listeners.
      Parameters:
        `shape` - the shape (`null` permitted).

    - #### setItemLabelsVisible

          void setItemLabelsVisible(boolean visible)

      Deprecated. This method should no longer be used (as of version 1.0.6). It is sufficient to rely on `setSeriesItemLabelsVisible(int, Boolean)` and `setBaseItemLabelsVisible(boolean)`.
      Sets a flag that controls whether or not the item labels for ALL series are visible.
      Parameters:
        `visible` - the flag.

    - #### setItemLabelsVisible

          void setItemLabelsVisible(java.lang.Boolean visible)

      Deprecated. This method should no longer be used (as of version 1.0.6). It is sufficient to rely on `setSeriesItemLabelsVisible(int, Boolean)` and `setBaseItemLabelsVisible(boolean)`.
      Sets a flag that controls whether or not the item labels for ALL series are visible.
      Parameters:
        `visible` - the flag (`null` permitted).

    - #### setItemLabelsVisible

          void setItemLabelsVisible(java.lang.Boolean visible,
                                    boolean notify)

      Deprecated. This method should no longer be used (as of version 1.0.6). It is sufficient to rely on `setSeriesItemLabelsVisible(int, Boolean, boolean)` and `setBaseItemLabelsVisible(Boolean, boolean)`.
      Sets the visibility of item labels for ALL series and, if requested, sends a `RendererChangeEvent` to all registered listeners.
      Parameters:
        `visible` - a flag that controls whether or not the item labels are visible (`null` permitted).
        `notify` - a flag that controls whether or not listeners are notified.

    - #### setItemLabelGenerator

          void setItemLabelGenerator(XYItemLabelGenerator generator)

      Deprecated. As of version 1.0.6, this override setting should not be used. You can use the base setting instead (`setBaseItemLabelGenerator(XYItemLabelGenerator)`).
      Sets the item label generator for ALL series and sends a `RendererChangeEvent` to all registered listeners.
      Parameters:
        `generator` - the generator (`null` permitted).

    - #### setToolTipGenerator

          void setToolTipGenerator(XYToolTipGenerator generator)

      Deprecated. As of version 1.0.6, this override setting should not be used. You can use the base setting instead (`setBaseToolTipGenerator(XYToolTipGenerator)`).
      Sets the tool tip generator for ALL series and sends a `RendererChangeEvent` to all registered listeners.
      Parameters:
        `generator` - the generator (`null` permitted).

    - #### getItemLabelFont

          java.awt.Font getItemLabelFont()

      Deprecated. This method should no longer be used (as of version 1.0.6). It is sufficient to rely on `getSeriesItemLabelFont(int)` and `getBaseItemLabelFont()`.
      Returns the font used for all item labels. This may be `null`, in which case the per series font settings will apply.
      Returns:
        The font (possibly `null`).

    - #### setItemLabelFont

          void setItemLabelFont(java.awt.Font font)

      Deprecated. This method should no longer be used (as of version 1.0.6). It is sufficient to rely on `setSeriesItemLabelFont(int, Font)` and `setBaseItemLabelFont(Font)`.
      Sets the item label font for ALL series and sends a `RendererChangeEvent` to all registered listeners. You can set this to `null` if you prefer to set the font on a per series basis.
      Parameters:
        `font` - the font (`null` permitted).

    - #### getItemLabelPaint

          java.awt.Paint getItemLabelPaint()

      Deprecated. This method should no longer be used (as of version 1.0.6). It is sufficient to rely on `getSeriesItemLabelPaint(int)` and `getBaseItemLabelPaint()`.
      Returns the paint used for all item labels. This may be `null`, in which case the per series paint settings will apply.
      Returns:
        The paint (possibly `null`).

    - #### setItemLabelPaint

          void setItemLabelPaint(java.awt.Paint paint)

      Deprecated. This method should no longer be used (as of version 1.0.6). It is sufficient to rely on `setSeriesItemLabelPaint(int, Paint)` and `setBaseItemLabelPaint(Paint)`.
      Sets the item label paint for ALL series and sends a `RendererChangeEvent` to all registered listeners.
      Parameters:
        `paint` - the paint (`null` permitted).

    - #### getPositiveItemLabelPosition

          ItemLabelPosition getPositiveItemLabelPosition()

      Deprecated. This method should no longer be used (as of version 1.0.6). It is sufficient to rely on `getSeriesPositiveItemLabelPosition(int)` and `getBasePositiveItemLabelPosition()`.
      Returns the item label position for positive values in ALL series.
      Returns:
        The item label position (possibly `null`).

    - #### setPositiveItemLabelPosition

          void setPositiveItemLabelPosition(ItemLabelPosition position)

      Deprecated. This method should no longer be used (as of version 1.0.6). It is sufficient to rely on `setSeriesPositiveItemLabelPosition(int, ItemLabelPosition)` and `setBasePositiveItemLabelPosition(ItemLabelPosition)`.
      Sets the item label position for positive values in ALL series, and sends a `RendererChangeEvent` to all registered listeners. You need to set this to `null` to expose the settings for individual series.
      Parameters:
        `position` - the position (`null` permitted).

    - #### setPositiveItemLabelPosition

          void setPositiveItemLabelPosition(ItemLabelPosition position,
                                            boolean notify)

      Deprecated. This method should no longer be used (as of version 1.0.6). It is sufficient to rely on `setSeriesPositiveItemLabelPosition(int, ItemLabelPosition, boolean)` and `setBasePositiveItemLabelPosition( ItemLabelPosition, boolean)`.
      Sets the positive item label position for ALL series and (if requested) sends a `RendererChangeEvent` to all registered listeners.
      Parameters:
        `position` - the position (`null` permitted).
        `notify` - notify registered listeners?

    - #### getNegativeItemLabelPosition

          ItemLabelPosition getNegativeItemLabelPosition()

      Deprecated. This method should no longer be used (as of version 1.0.6). It is sufficient to rely on `getSeriesNegativeItemLabelPosition(int)` and `getBaseNegativeItemLabelPosition()`.
      Returns the item label position for negative values in ALL series.
      Returns:
        The item label position (possibly `null`).

    - #### setNegativeItemLabelPosition

          void setNegativeItemLabelPosition(ItemLabelPosition position)

      Deprecated. This method should no longer be used (as of version 1.0.6). It is sufficient to rely on `setSeriesNegativeItemLabelPosition(int, ItemLabelPosition)` and `setBaseNegativeItemLabelPosition(ItemLabelPosition)`.
      Sets the item label position for negative values in ALL series, and sends a `RendererChangeEvent` to all registered listeners. You need to set this to `null` to expose the settings for individual series.
      Parameters:
        `position` - the position (`null` permitted).

    - #### setNegativeItemLabelPosition

          void setNegativeItemLabelPosition(ItemLabelPosition position,
                                            boolean notify)

      Deprecated. This method should no longer be used (as of version 1.0.6). It is sufficient to rely on `setSeriesNegativeItemLabelPosition(int, ItemLabelPosition, boolean)` and `setBaseNegativeItemLabelPosition( ItemLabelPosition, boolean)`.
      Sets the item label position for negative values in ALL series and (if requested) sends a `RendererChangeEvent` to all registered listeners.
      Parameters:
        `position` - the position (`null` permitted).
        `notify` - notify registered listeners?