Module platform

Class LineAndShapeRenderer

All Implemented Interfaces:
Serializable, Cloneable, LegendItemSource, CategoryItemRenderer, PublicCloneable
Direct Known Subclasses:
DefaultCategoryItemRenderer, StatisticalLineAndShapeRenderer

public class LineAndShapeRenderer extends AbstractCategoryItemRenderer implements Cloneable, PublicCloneable, Serializable
A renderer that draws shapes for each data item, and lines between data items (for use with the CategoryPlot class). The example shown here is generated by the LineChartDemo1.java program included in the JFreeChart Demo Collection:

LineAndShapeRendererSample.png
See Also:
  • Constructor Details

    • LineAndShapeRenderer

      public LineAndShapeRenderer()
      Creates a renderer with both lines and shapes visible by default.
    • LineAndShapeRenderer

      public LineAndShapeRenderer(boolean lines, boolean shapes)
      Creates a new renderer with lines and/or shapes visible.
      Parameters:
      lines - draw lines?
      shapes - draw shapes?
  • Method Details

    • getItemLineVisible

      public boolean getItemLineVisible(int series, int item)
      Returns the flag used to control whether or not the line for an item is visible.
      Parameters:
      series - the series index (zero-based).
      item - the item index (zero-based).
      Returns:
      A boolean.
    • getSeriesLinesVisible

      public Boolean getSeriesLinesVisible(int series)
      Returns the flag used to control whether or not the lines for a series are visible.
      Parameters:
      series - the series index (zero-based).
      Returns:
      The flag (possibly null).
      See Also:
    • setSeriesLinesVisible

      public void setSeriesLinesVisible(int series, Boolean flag)
      Sets the 'lines visible' flag for a series and sends a RendererChangeEvent to all registered listeners.
      Parameters:
      series - the series index (zero-based).
      flag - the flag (null permitted).
      See Also:
    • setSeriesLinesVisible

      public void setSeriesLinesVisible(int series, boolean visible)
      Sets the 'lines visible' flag for a series and sends a RendererChangeEvent to all registered listeners.
      Parameters:
      series - the series index (zero-based).
      visible - the flag.
      See Also:
    • getDefaultLinesVisible

      public boolean getDefaultLinesVisible()
      Returns the default 'lines visible' attribute.
      Returns:
      The default flag.
      See Also:
    • setDefaultLinesVisible

      public void setDefaultLinesVisible(boolean flag)
      Sets the default 'lines visible' flag and sends a RendererChangeEvent to all registered listeners.
      Parameters:
      flag - the flag.
      See Also:
    • getItemShapeVisible

      public boolean getItemShapeVisible(int series, int item)
      Returns the flag used to control whether or not the shape for an item is visible.
      Parameters:
      series - the series index (zero-based).
      item - the item index (zero-based).
      Returns:
      A boolean.
    • getSeriesShapesVisible

      public Boolean getSeriesShapesVisible(int series)
      Returns the flag used to control whether or not the shapes for a series are visible.
      Parameters:
      series - the series index (zero-based).
      Returns:
      A boolean.
      See Also:
    • setSeriesShapesVisible

      public void setSeriesShapesVisible(int series, boolean visible)
      Sets the 'shapes visible' flag for a series and sends a RendererChangeEvent to all registered listeners.
      Parameters:
      series - the series index (zero-based).
      visible - the flag.
      See Also:
    • setSeriesShapesVisible

      public void setSeriesShapesVisible(int series, Boolean flag)
      Sets the 'shapes visible' flag for a series and sends a RendererChangeEvent to all registered listeners.
      Parameters:
      series - the series index (zero-based).
      flag - the flag.
      See Also:
    • getDefaultShapesVisible

      public boolean getDefaultShapesVisible()
      Returns the default 'shape visible' attribute.
      Returns:
      The base flag.
      See Also:
    • setDefaultShapesVisible

      public void setDefaultShapesVisible(boolean flag)
      Sets the default 'shapes visible' flag and sends a RendererChangeEvent to all registered listeners.
      Parameters:
      flag - the flag.
      See Also:
    • getDrawOutlines

      public boolean getDrawOutlines()
      Returns true if outlines should be drawn for shapes, and false otherwise.
      Returns:
      A boolean.
      See Also:
    • setDrawOutlines

      public void setDrawOutlines(boolean flag)
      Sets the flag that controls whether outlines are drawn for shapes, and sends a RendererChangeEvent to all registered listeners.

      In some cases, shapes look better if they do NOT have an outline, but this flag allows you to set your own preference.

      Parameters:
      flag - the flag.
      See Also:
    • getUseOutlinePaint

      public boolean getUseOutlinePaint()
      Returns the flag that controls whether the outline paint is used for shape outlines. If not, the regular series paint is used.
      Returns:
      A boolean.
      See Also:
    • setUseOutlinePaint

      public void setUseOutlinePaint(boolean use)
      Sets the flag that controls whether the outline paint is used for shape outlines, and sends a RendererChangeEvent to all registered listeners.
      Parameters:
      use - the flag.
      See Also:
    • getItemShapeFilled

      public boolean getItemShapeFilled(int series, int item)
      Returns the flag used to control whether or not the shape for an item is filled. The default implementation passes control to the getSeriesShapesFilled method. You can override this method if you require different behaviour.
      Parameters:
      series - the series index (zero-based).
      item - the item index (zero-based).
      Returns:
      A boolean.
    • getSeriesShapesFilled

      public boolean getSeriesShapesFilled(int series)
      Returns the flag used to control whether or not the shapes for a series are filled.
      Parameters:
      series - the series index (zero-based).
      Returns:
      A boolean.
    • setSeriesShapesFilled

      public void setSeriesShapesFilled(int series, Boolean filled)
      Sets the 'shapes filled' flag for a series and sends a RendererChangeEvent to all registered listeners.
      Parameters:
      series - the series index (zero-based).
      filled - the flag.
      See Also:
    • setSeriesShapesFilled

      public void setSeriesShapesFilled(int series, boolean filled)
      Sets the 'shapes filled' flag for a series and sends a RendererChangeEvent to all registered listeners.
      Parameters:
      series - the series index (zero-based).
      filled - the flag.
      See Also:
    • getDefaultShapesFilled

      public boolean getDefaultShapesFilled()
      Returns the default 'shape filled' attribute.
      Returns:
      The base flag.
      See Also:
    • setDefaultShapesFilled

      public void setDefaultShapesFilled(boolean flag)
      Sets the default 'shapes filled' flag and sends a RendererChangeEvent to all registered listeners.
      Parameters:
      flag - the flag.
      See Also:
    • getUseFillPaint

      public boolean getUseFillPaint()
      Returns true if the renderer should use the fill paint setting to fill shapes, and false if it should just use the regular paint.
      Returns:
      A boolean.
      See Also:
    • setUseFillPaint

      public void setUseFillPaint(boolean flag)
      Sets the flag that controls whether the fill paint is used to fill shapes, and sends a RendererChangeEvent to all registered listeners.
      Parameters:
      flag - the flag.
      See Also:
    • getUseSeriesOffset

      public boolean getUseSeriesOffset()
      Returns the flag that controls whether or not the x-position for each data item is offset within the category according to the series.
      Returns:
      A boolean.
      See Also:
    • setUseSeriesOffset

      public void setUseSeriesOffset(boolean offset)
      Sets the flag that controls whether or not the x-position for each data item is offset within its category according to the series, and sends a RendererChangeEvent to all registered listeners.
      Parameters:
      offset - the offset.
      See Also:
    • getItemMargin

      public double getItemMargin()
      Returns the item margin, which is the gap between items within a category (expressed as a percentage of the overall category width). This can be used to match the offset alignment with the bars drawn by a BarRenderer).
      Returns:
      The item margin.
      See Also:
    • setItemMargin

      public void setItemMargin(double margin)
      Sets the item margin, which is the gap between items within a category (expressed as a percentage of the overall category width), and sends a RendererChangeEvent to all registered listeners.
      Parameters:
      margin - the margin (0.0 <= margin < 1.0).
      See Also:
    • getLegendItem

      public LegendItem getLegendItem(int datasetIndex, int series)
      Returns a legend item for a series.
      Specified by:
      getLegendItem in interface CategoryItemRenderer
      Overrides:
      getLegendItem in class AbstractCategoryItemRenderer
      Parameters:
      datasetIndex - the dataset index (zero-based).
      series - the series index (zero-based).
      Returns:
      The legend item.
      See Also:
    • getPassCount

      public int getPassCount()
      This renderer uses two passes to draw the data.
      Specified by:
      getPassCount in interface CategoryItemRenderer
      Overrides:
      getPassCount in class AbstractCategoryItemRenderer
      Returns:
      The pass count (2 for this renderer).
    • drawItem

      public void drawItem(Graphics2D g2, CategoryItemRendererState state, Rectangle2D dataArea, CategoryPlot plot, CategoryAxis domainAxis, ValueAxis rangeAxis, CategoryDataset dataset, int row, int column, int pass)
      Draw a single data item.
      Specified by:
      drawItem in interface CategoryItemRenderer
      Parameters:
      g2 - the graphics device.
      state - the renderer state.
      dataArea - the area in which the data is drawn.
      plot - the plot.
      domainAxis - the domain axis.
      rangeAxis - the range axis.
      dataset - the dataset.
      row - the row index (zero-based).
      column - the column index (zero-based).
      pass - the pass index.
    • equals

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

      public Object clone() throws CloneNotSupportedException
      Returns an independent copy of the renderer.
      Specified by:
      clone in interface PublicCloneable
      Overrides:
      clone in class AbstractCategoryItemRenderer
      Returns:
      A clone.
      Throws:
      CloneNotSupportedException - should not happen.