Class XYAreaRenderer

All Implemented Interfaces:
Serializable, Cloneable, EventListener, AnnotationChangeListener, LegendItemSource, XYItemRenderer, PublicCloneable
Direct Known Subclasses:
StackedXYAreaRenderer

public class XYAreaRenderer extends AbstractXYItemRenderer implements XYItemRenderer, PublicCloneable
Area item renderer for an XYPlot. This class can draw (a) shapes at each point, or (b) lines between points, or (c) both shapes and lines, or (d) filled areas, or (e) filled areas and shapes. The example shown here is generated by the XYAreaRendererDemo1.java program included in the JFreeChart demo collection:

XYAreaRendererSample.png
See Also:
  • Field Details

    • serialVersionUID

      private static final long serialVersionUID
      For serialization.
      See Also:
    • SHAPES

      public static final int SHAPES
      Useful constant for specifying the type of rendering (shapes only).
      See Also:
    • LINES

      public static final int LINES
      Useful constant for specifying the type of rendering (lines only).
      See Also:
    • SHAPES_AND_LINES

      public static final int SHAPES_AND_LINES
      Useful constant for specifying the type of rendering (shapes and lines).
      See Also:
    • AREA

      public static final int AREA
      Useful constant for specifying the type of rendering (area only).
      See Also:
    • AREA_AND_SHAPES

      public static final int AREA_AND_SHAPES
      Useful constant for specifying the type of rendering (area and shapes).
      See Also:
    • plotShapes

      private boolean plotShapes
      A flag indicating whether or not shapes are drawn at each XY point.
    • plotLines

      private boolean plotLines
      A flag indicating whether or not lines are drawn between XY points.
    • plotArea

      private boolean plotArea
      A flag indicating whether or not Area are drawn at each XY point.
    • showOutline

      private boolean showOutline
      A flag that controls whether or not the outline is shown.
    • legendArea

      private transient Shape legendArea
      The shape used to represent an area in each legend item (this should never be null).
    • useFillPaint

      private boolean useFillPaint
      A flag that can be set to specify that the fill paint should be used to fill the area under the renderer.
    • gradientTransformer

      private GradientPaintTransformer gradientTransformer
      A transformer that is applied to the paint used to fill under the area *if* it is an instance of GradientPaint.
  • Constructor Details

    • XYAreaRenderer

      public XYAreaRenderer()
      Constructs a new renderer.
    • XYAreaRenderer

      public XYAreaRenderer(int type)
      Constructs a new renderer.
      Parameters:
      type - the type of the renderer.
    • XYAreaRenderer

      public XYAreaRenderer(int type, XYToolTipGenerator toolTipGenerator, XYURLGenerator urlGenerator)
      Constructs a new renderer. To specify the type of renderer, use one of the constants: SHAPES, LINES, SHAPES_AND_LINES, AREA or AREA_AND_SHAPES.
      Parameters:
      type - the type of renderer.
      toolTipGenerator - the tool tip generator (null permitted).
      urlGenerator - the URL generator (null permitted).
  • Method Details

    • getPlotShapes

      public boolean getPlotShapes()
      Returns true if shapes are being plotted by the renderer.
      Returns:
      true if shapes are being plotted by the renderer.
    • getPlotLines

      public boolean getPlotLines()
      Returns true if lines are being plotted by the renderer.
      Returns:
      true if lines are being plotted by the renderer.
    • getPlotArea

      public boolean getPlotArea()
      Returns true if Area is being plotted by the renderer.
      Returns:
      true if Area is being plotted by the renderer.
    • isOutline

      public boolean isOutline()
      Returns a flag that controls whether or not outlines of the areas are drawn.
      Returns:
      The flag.
      See Also:
    • setOutline

      public void setOutline(boolean show)
      Sets a flag that controls whether or not outlines of the areas are drawn and sends a RendererChangeEvent to all registered listeners.
      Parameters:
      show - the flag.
      See Also:
    • getLegendArea

      public Shape getLegendArea()
      Returns the shape used to represent an area in the legend.
      Returns:
      The legend area (never null).
    • setLegendArea

      public void setLegendArea(Shape area)
      Sets the shape used as an area in each legend item and sends a RendererChangeEvent to all registered listeners.
      Parameters:
      area - the area (null not permitted).
    • getUseFillPaint

      public boolean getUseFillPaint()
      Returns the flag that controls whether the series fill paint is used to fill the area under the line.
      Returns:
      A boolean.
    • setUseFillPaint

      public void setUseFillPaint(boolean use)
      Sets the flag that controls whether or not the series fill paint is used to fill the area under the line and sends a RendererChangeEvent to all listeners.
      Parameters:
      use - the new flag value.
    • getGradientTransformer

      public GradientPaintTransformer getGradientTransformer()
      Returns the gradient paint transformer.
      Returns:
      The gradient paint transformer (never null).
    • setGradientTransformer

      public void setGradientTransformer(GradientPaintTransformer transformer)
      Sets the gradient paint transformer and sends a RendererChangeEvent to all registered listeners.
      Parameters:
      transformer - the transformer (null not permitted).
    • initialise

      public XYItemRendererState initialise(Graphics2D g2, Rectangle2D dataArea, XYPlot plot, XYDataset data, PlotRenderingInfo info)
      Initialises the renderer and returns a state object that should be passed to all subsequent calls to the drawItem() method.
      Specified by:
      initialise in interface XYItemRenderer
      Overrides:
      initialise in class AbstractXYItemRenderer
      Parameters:
      g2 - the graphics device.
      dataArea - the area inside the axes.
      plot - the plot.
      data - the data.
      info - an optional info collection object to return data back to the caller.
      Returns:
      A state object for use by the renderer.
    • getLegendItem

      public LegendItem getLegendItem(int datasetIndex, int series)
      Returns a default legend item for the specified series. Subclasses should override this method to generate customised items.
      Specified by:
      getLegendItem in interface XYItemRenderer
      Overrides:
      getLegendItem in class AbstractXYItemRenderer
      Parameters:
      datasetIndex - the dataset index (zero-based).
      series - the series index (zero-based).
      Returns:
      A legend item for the series.
    • drawItem

      public void drawItem(Graphics2D g2, XYItemRendererState state, Rectangle2D dataArea, PlotRenderingInfo info, XYPlot plot, ValueAxis domainAxis, ValueAxis rangeAxis, XYDataset dataset, int series, int item, CrosshairState crosshairState, int pass)
      Draws the visual representation of a single data item.
      Specified by:
      drawItem in interface XYItemRenderer
      Parameters:
      g2 - the graphics device.
      state - the renderer state.
      dataArea - the area within which the data is being drawn.
      info - collects information about the drawing.
      plot - the plot (can be used to obtain standard color information etc).
      domainAxis - the domain axis.
      rangeAxis - the range axis.
      dataset - the dataset.
      series - the series index (zero-based).
      item - the item index (zero-based).
      crosshairState - crosshair information for the plot (null permitted).
      pass - the pass index.
    • clone

      public Object clone() throws CloneNotSupportedException
      Returns a clone of the renderer.
      Specified by:
      clone in interface PublicCloneable
      Overrides:
      clone in class AbstractXYItemRenderer
      Returns:
      A clone.
      Throws:
      CloneNotSupportedException - if the renderer cannot be cloned.
    • equals

      public boolean equals(Object obj)
      Tests this renderer for equality with an arbitrary object.
      Overrides:
      equals in class AbstractXYItemRenderer
      Parameters:
      obj - the object (null permitted).
      Returns:
      A boolean.
    • hashCode

      public int hashCode()
      Returns a hash code for this instance.
      Overrides:
      hashCode in class AbstractXYItemRenderer
      Returns:
      A hash code.
    • readObject

      private void readObject(ObjectInputStream stream) throws IOException, ClassNotFoundException
      Provides serialization support.
      Parameters:
      stream - the input stream.
      Throws:
      IOException - if there is an I/O error.
      ClassNotFoundException - if there is a classpath problem.
    • writeObject

      private void writeObject(ObjectOutputStream stream) throws IOException
      Provides serialization support.
      Parameters:
      stream - the output stream.
      Throws:
      IOException - if there is an I/O error.