Class StackedXYBarRenderer

    • Field Detail

      • serialVersionUID

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

        private boolean renderAsPercentages
        A flag that controls whether the bars display values or percentages.
    • Constructor Detail

      • StackedXYBarRenderer

        public StackedXYBarRenderer()
        Creates a new renderer.
      • StackedXYBarRenderer

        public StackedXYBarRenderer​(double margin)
        Creates a new renderer.
        Parameters:
        margin - the percentual amount of the bars that are cut away.
    • Method Detail

      • getRenderAsPercentages

        public boolean getRenderAsPercentages()
        Returns true if the renderer displays each item value as a percentage (so that the stacked bars add to 100%), and false otherwise.
        Returns:
        A boolean.
        See Also:
        setRenderAsPercentages(boolean)
      • 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 bars add to 100%), and sends a RendererChangeEvent to all registered listeners.
        Parameters:
        asPercentages - the flag.
        See Also:
        getRenderAsPercentages()
      • getPassCount

        public int getPassCount()
        Returns 3 to indicate that this renderer requires three passes for drawing (shadows are drawn in the first pass, the bars in the second, and item labels are drawn in the third pass so that they always appear in front of all the bars).
        Specified by:
        getPassCount in interface XYItemRenderer
        Overrides:
        getPassCount in class AbstractXYItemRenderer
        Returns:
        2.
      • initialise

        public XYItemRendererState initialise​(java.awt.Graphics2D g2,
                                              java.awt.geom.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. Here there is nothing to do.
        Specified by:
        initialise in interface XYItemRenderer
        Overrides:
        initialise in class XYBarRenderer
        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.
      • drawItem

        public void drawItem​(java.awt.Graphics2D g2,
                             XYItemRendererState state,
                             java.awt.geom.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
        Overrides:
        drawItem in class XYBarRenderer
        Parameters:
        g2 - the graphics device.
        state - the renderer state.
        dataArea - the area within which the plot 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.
      • equals

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