Class StackedAreaRenderer

  • All Implemented Interfaces:
    java.io.Serializable, java.lang.Cloneable, LegendItemSource, CategoryItemRenderer, org.jfree.util.PublicCloneable

    public class StackedAreaRenderer
    extends AreaRenderer
    implements java.lang.Cloneable, org.jfree.util.PublicCloneable, java.io.Serializable
    A renderer that draws stacked area charts for a CategoryPlot. The example shown here is generated by the StackedAreaChartDemo1.java program included in the JFreeChart Demo Collection:

    StackedAreaRendererSample.png
    See Also:
    Serialized Form
    • Constructor Detail

      • StackedAreaRenderer

        public StackedAreaRenderer​(boolean renderAsPercentages)
        Creates a new renderer.
        Parameters:
        renderAsPercentages - a flag that controls whether the data values are rendered as percentages.
    • Method Detail

      • getRenderAsPercentages

        public boolean getRenderAsPercentages()
        Returns true if the renderer displays each item value as a percentage (so that the stacked areas add to 100%), and false otherwise.
        Returns:
        A boolean.
        Since:
        1.0.3
      • setRenderAsPercentages

        public void setRenderAsPercentages​(boolean asPercentages)
        Sets the flag that controls whether the renderer displays each item value as a percentage (so that the stacked areas add to 100%), and sends a RendererChangeEvent to all registered listeners.
        Parameters:
        asPercentages - the flag.
        Since:
        1.0.3
      • drawItem

        public void drawItem​(java.awt.Graphics2D g2,
                             CategoryItemRendererState state,
                             java.awt.geom.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
        Overrides:
        drawItem in class AreaRenderer
        Parameters:
        g2 - the graphics device.
        state - the renderer state.
        dataArea - the data plot area.
        plot - the plot.
        domainAxis - the domain axis.
        rangeAxis - the range axis.
        dataset - the data.
        row - the row index (zero-based).
        column - the column index (zero-based).
        pass - the pass index.
      • getStackValues

        protected double[] getStackValues​(CategoryDataset dataset,
                                          int series,
                                          int index,
                                          int[] validRows)
        Calculates the stacked values (one positive and one negative) of all series up to, but not including, series for the specified item. It returns [0.0, 0.0] if series is the first series.
        Parameters:
        dataset - the dataset (null not permitted).
        series - the series index.
        index - the item index.
        validRows - the valid rows.
        Returns:
        An array containing the cumulative negative and positive values for all series values up to but excluding series for index.
      • equals

        public boolean equals​(java.lang.Object obj)
        Checks this instance for equality with an arbitrary object.
        Overrides:
        equals in class AreaRenderer
        Parameters:
        obj - the object (null not permitted).
        Returns:
        A boolean.
      • getPreviousHeight

        protected double getPreviousHeight​(CategoryDataset dataset,
                                           int series,
                                           int category)
        Deprecated.
        As of 1.0.13, as the method is never used internally.
        Calculates the stacked value of the all series up to, but not including series for the specified category, category. It returns 0.0 if series is the first series, i.e. 0.
        Parameters:
        dataset - the dataset (null not permitted).
        series - the series.
        category - the category.
        Returns:
        double returns a cumulative value for all series' values up to but excluding series for Object category.