Class CombinedRangeCategoryPlot

    • Field Detail

      • serialVersionUID

        private static final long serialVersionUID
        For serialization.
        See Also:
        Constant Field Values
      • subplots

        private java.util.List subplots
        Storage for the subplot references.
      • gap

        private double gap
        The gap between subplots.
      • subplotArea

        private transient java.awt.geom.Rectangle2D[] subplotArea
        Temporary storage for the subplot areas.
    • Constructor Detail

      • CombinedRangeCategoryPlot

        public CombinedRangeCategoryPlot()
        Default constructor.
      • CombinedRangeCategoryPlot

        public CombinedRangeCategoryPlot​(ValueAxis rangeAxis)
        Creates a new plot.
        Parameters:
        rangeAxis - the shared range axis.
    • Method Detail

      • getGap

        public double getGap()
        Returns the space between subplots.
        Returns:
        The gap (in Java2D units).
      • setGap

        public void setGap​(double gap)
        Sets the amount of space between subplots and sends a PlotChangeEvent to all registered listeners.
        Parameters:
        gap - the gap between subplots (in Java2D units).
      • add

        public void add​(CategoryPlot subplot)
        Adds a subplot (with a default 'weight' of 1) and sends a PlotChangeEvent to all registered listeners.

        You must ensure that the subplot has a non-null domain axis. The range axis for the subplot will be set to null.
        Parameters:
        subplot - the subplot (null not permitted).
      • add

        public void add​(CategoryPlot subplot,
                        int weight)
        Adds a subplot and sends a PlotChangeEvent to all registered listeners.

        You must ensure that the subplot has a non-null domain axis. The range axis for the subplot will be set to null.
        Parameters:
        subplot - the subplot (null not permitted).
        weight - the weight (must be >= 1).
      • remove

        public void remove​(CategoryPlot subplot)
        Removes a subplot from the combined chart.
        Parameters:
        subplot - the subplot (null not permitted).
      • getSubplots

        public java.util.List getSubplots()
        Returns the list of subplots. The returned list may be empty, but is never null.
        Returns:
        An unmodifiable list of subplots.
      • calculateAxisSpace

        protected AxisSpace calculateAxisSpace​(java.awt.Graphics2D g2,
                                               java.awt.geom.Rectangle2D plotArea)
        Calculates the space required for the axes.
        Overrides:
        calculateAxisSpace in class CategoryPlot
        Parameters:
        g2 - the graphics device.
        plotArea - the plot area.
        Returns:
        The space required for the axes.
      • draw

        public void draw​(java.awt.Graphics2D g2,
                         java.awt.geom.Rectangle2D area,
                         java.awt.geom.Point2D anchor,
                         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 CategoryPlot
        Parameters:
        g2 - the graphics device.
        area - the area within which the plot (including axis labels) should be drawn.
        anchor - the anchor point (null permitted).
        parentState - the parent state.
        info - collects information about the drawing (null permitted).
      • setShadowGenerator

        public void setShadowGenerator​(ShadowGenerator generator)
        Sets the shadow generator for the plot (and all subplots) and sends a PlotChangeEvent to all registered listeners.
        Overrides:
        setShadowGenerator in class CategoryPlot
        Parameters:
        generator - the new generator (null permitted).
      • getDataRange

        public Range getDataRange​(ValueAxis axis)
        Returns a range representing the extent of the data values in this plot (obtained from the subplots) that will be rendered against the specified axis. NOTE: This method is intended for internal JFreeChart use, and is public only so that code in the axis classes can call it. Since only the range axis is shared between subplots, the JFreeChart code will only call this method for the range values (although this is not checked/enforced).
        Specified by:
        getDataRange in interface ValueAxisPlot
        Overrides:
        getDataRange in class CategoryPlot
        Parameters:
        axis - the axis.
        Returns:
        The range.
      • setFixedDomainAxisSpaceForSubplots

        protected void setFixedDomainAxisSpaceForSubplots​(AxisSpace space)
        Sets the size (width or height, depending on the orientation of the plot) for the domain axis of each subplot.
        Parameters:
        space - the space.
      • handleClick

        public void handleClick​(int x,
                                int y,
                                PlotRenderingInfo info)
        Handles a 'click' on the plot by updating the anchor value.
        Overrides:
        handleClick in class CategoryPlot
        Parameters:
        x - x-coordinate of the click.
        y - y-coordinate of the click.
        info - information about the plot's dimensions.
      • equals

        public boolean equals​(java.lang.Object obj)
        Tests the plot for equality with an arbitrary object.
        Overrides:
        equals in class CategoryPlot
        Parameters:
        obj - the object (null permitted).
        Returns:
        true or false.
      • canEqual

        public boolean canEqual​(java.lang.Object other)
        Ensures symmetry between super/subclass implementations of equals. For more detail, see http://jqno.nl/equalsverifier/manual/inheritance.
        Overrides:
        canEqual in class CategoryPlot
        Parameters:
        other - Object
        Returns:
        true ONLY if the parameter is THIS class type
      • clone

        public java.lang.Object clone()
                               throws java.lang.CloneNotSupportedException
        Returns a clone of the plot.
        Specified by:
        clone in interface PublicCloneable
        Overrides:
        clone in class CategoryPlot
        Returns:
        A clone.
        Throws:
        java.lang.CloneNotSupportedException - this class will not throw this exception, but subclasses (if any) might.
      • readObject

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