Class CombinedRangeXYPlot

All Implemented Interfaces:
Serializable, Cloneable, EventListener, AxisChangeListener, PlotChangeListener, RendererChangeListener, ValueAxisPlot, DatasetChangeListener, org.jfree.util.PublicCloneable

public class CombinedRangeXYPlot
extends XYPlot
implements Cloneable, org.jfree.util.PublicCloneable, Serializable, PlotChangeListener
An extension of XYPlot that contains multiple subplots that share a common range axis.
See Also:
Serialized Form
  • Constructor Details

    • CombinedRangeXYPlot

      public CombinedRangeXYPlot()
      Default constructor.
    • CombinedRangeXYPlot

      public CombinedRangeXYPlot​(ValueAxis rangeAxis)
      Creates a new plot.
      Parameters:
      rangeAxis - the shared axis.
  • Method Details

    • getPlotType

      public String getPlotType()
      Returns a string describing the type of plot.
      Overrides:
      getPlotType in class XYPlot
      Returns:
      the type of plot.
    • getGap

      public double getGap()
      Returns the space between subplots.
      Returns:
      the gap
    • setGap

      public void setGap​(double gap)
      Sets the amount of space between subplots.
      Parameters:
      gap - the gap between subplots
    • add

      public void add​(XYPlot subplot)
      Adds a subplot, with a default 'weight' of 1.
      Parameters:
      subplot - the subplot.
    • add

      public void add​(XYPlot subplot, int weight)
      Adds a subplot with a particular weight (greater than or equal to one). The weight determines how much space is allocated to the subplot relative to all the other subplots.
      Parameters:
      subplot - the subplot.
      weight - the weight (must be 1 or greater).
    • remove

      public void remove​(XYPlot subplot)
      Removes a subplot from the combined chart.
      Parameters:
      subplot - the subplot.
    • getSubplots

      public List getSubplots()
      Returns the list of subplots.
      Returns:
      the list of subplots.
    • draw

      public void draw​(Graphics2D g2, Rectangle2D area, PlotState parentState, PlotRenderingInfo info)
      Draws the plot on a Java 2D graphics device (such as the screen or a printer). Will perform all the placement calculations for each sub-plots and then tell these to draw themselves.
      Overrides:
      draw in class XYPlot
      Parameters:
      g2 - the graphics device.
      area - the area within which the plot (including axis labels) should be drawn.
      parentState - the state from the parent plot (if there is one).
      info - collects information about the drawing (null permitted).
    • draw

      public void draw​(Graphics2D g2, Rectangle2D area, Point2D anchor, PlotState parentState, PlotRenderingInfo info)
      Draws the plot within the specified area on a graphics device.
      Overrides:
      draw in class XYPlot
      Parameters:
      g2 - the graphics device.
      area - the plot area (in Java2D space).
      anchor - an anchor point in Java2D space (null permitted).
      parentState - the state from the parent plot, if there is one (null permitted).
      info - collects chart drawing information (null permitted).
    • getLegendItems

      public LegendItemCollection getLegendItems()
      Returns a collection of legend items for the plot.
      Overrides:
      getLegendItems in class XYPlot
      Returns:
      the legend items.
    • zoom

      public void zoom​(double percent)
      A zoom method that (currently) does nothing.
      Overrides:
      zoom in class XYPlot
      Parameters:
      percent - the zoom percentage.
    • setRenderer

      public void setRenderer​(XYItemRenderer renderer)
      Sets the item renderer FOR ALL SUBPLOTS. Registered listeners are notified that the plot has been modified.

      Note: usually you will want to set the renderer independently for each subplot, which is NOT what this method does.

      Overrides:
      setRenderer in class XYPlot
      Parameters:
      renderer - the new renderer.
    • setOrientation

      public void setOrientation​(PlotOrientation orientation)
      Sets the orientation for the plot (and all its subplots).
      Overrides:
      setOrientation in class XYPlot
      Parameters:
      orientation - the orientation.
    • getDataRange

      public Range getDataRange​(ValueAxis axis)
      Returns the range for the axis. This is the combined range of all the subplots.
      Specified by:
      getDataRange in interface ValueAxisPlot
      Overrides:
      getDataRange in class XYPlot
      Parameters:
      axis - the axis.
      Returns:
      the range.
    • handleClick

      public void handleClick​(int x, int y, PlotRenderingInfo info)
      Handles a 'click' on the plot by updating the anchor values...
      Overrides:
      handleClick in class XYPlot
      Parameters:
      x - x-coordinate, where the click occured.
      y - y-coordinate, where the click occured.
      info - object containing information about the plot dimensions.
    • plotChanged

      public void plotChanged​(PlotChangeEvent event)
      Receives a PlotChangeEvent and responds by notifying all listeners.
      Specified by:
      plotChanged in interface PlotChangeListener
      Parameters:
      event - the event.
    • equals

      public boolean equals​(Object obj)
      Tests this plot for equality with another object.
      Overrides:
      equals in class XYPlot
      Parameters:
      obj - the other object.
      Returns:
      true or false.
    • clone

      public Object clone() throws CloneNotSupportedException
      Returns a clone of the plot.
      Specified by:
      clone in interface org.jfree.util.PublicCloneable
      Overrides:
      clone in class XYPlot
      Returns:
      A clone.
      Throws:
      CloneNotSupportedException - this class will not throw this exception, but subclasses (if any) might.