public class

RingPlot

extends PiePlot
implements Serializable Cloneable
java.lang.Object
   ↳ org.jfree.chart.plot.Plot
     ↳ org.jfree.chart.plot.PiePlot
       ↳ org.jfree.chart.plot.RingPlot

Class Overview

A customised pie plot that leaves a hole in the middle.

Summary

[Expand]
Inherited Constants
From class org.jfree.chart.plot.PiePlot
From class org.jfree.chart.plot.Plot
[Expand]
Inherited Fields
From class org.jfree.chart.plot.PiePlot
From class org.jfree.chart.plot.Plot
Public Constructors
RingPlot()
Creates a new plot with a null dataset.
RingPlot(PieDataset dataset)
Creates a new plot for the specified dataset.
Public Methods
boolean equals(Object obj)
Tests this plot for equality with an arbitrary object.
double getInnerSeparatorExtension()
Returns the length of the inner extension of the separator line that is drawn between sections, expressed as a percentage of the depth of the section.
double getOuterSeparatorExtension()
Returns the length of the outer extension of the separator line that is drawn between sections, expressed as a percentage of the depth of the section.
double getSectionDepth()
Returns the depth of each section, expressed as a percentage of the plot radius.
Paint getSeparatorPaint()
Returns the separator paint.
Stroke getSeparatorStroke()
Returns the separator stroke.
boolean getSeparatorsVisible()
Returns a flag that indicates whether or not separators are drawn between the sections in the chart.
PiePlotState initialise(Graphics2D g2, Rectangle2D plotArea, PiePlot plot, Integer index, PlotRenderingInfo info)
Initialises the plot state (which will store the total of all dataset values, among other things).
void setInnerSeparatorExtension(double percent)
Sets the length of the inner extension of the separator line that is drawn between sections, as a percentage of the depth of the sections, and sends a PlotChangeEvent to all registered listeners.
void setOuterSeparatorExtension(double percent)
Sets the length of the outer extension of the separator line that is drawn between sections, as a percentage of the depth of the sections, and sends a PlotChangeEvent to all registered listeners.
void setSectionDepth(double sectionDepth)
The section depth is given as percentage of the plot radius.
void setSeparatorPaint(Paint paint)
Sets the paint used to draw the separator between sections and sends a PlotChangeEvent to all registered listeners.
void setSeparatorStroke(Stroke stroke)
Sets the stroke used to draw the separator between sections and sends a PlotChangeEvent to all registered listeners.
void setSeparatorsVisible(boolean visible)
Sets the flag that controls whether or not separators are drawn between the sections in the chart, and sends a PlotChangeEvent to all registered listeners.
Protected Methods
void drawItem(Graphics2D g2, int section, Rectangle2D dataArea, PiePlotState state, int currentPass)
Draws a single data item.
double getLabelLinkDepth()
This method overrides the default value for cases where the ring plot is very thin.
[Expand]
Inherited Methods
From class org.jfree.chart.plot.PiePlot
From class org.jfree.chart.plot.Plot
From class java.lang.Object
From interface org.jfree.chart.LegendItemSource
From interface org.jfree.chart.event.AxisChangeListener
From interface org.jfree.chart.event.MarkerChangeListener
From interface org.jfree.data.general.DatasetChangeListener

Public Constructors

public RingPlot ()

Creates a new plot with a null dataset.

public RingPlot (PieDataset dataset)

Creates a new plot for the specified dataset.

Parameters
dataset the dataset (null permitted).

Public Methods

public boolean equals (Object obj)

Tests this plot for equality with an arbitrary object.

Parameters
obj the object to test against (null permitted).
Returns
  • A boolean.

public double getInnerSeparatorExtension ()

Returns the length of the inner extension of the separator line that is drawn between sections, expressed as a percentage of the depth of the section.

Returns
  • The inner separator extension (as a percentage).

public double getOuterSeparatorExtension ()

Returns the length of the outer extension of the separator line that is drawn between sections, expressed as a percentage of the depth of the section.

Returns
  • The outer separator extension (as a percentage).

public double getSectionDepth ()

Returns the depth of each section, expressed as a percentage of the plot radius.

Returns
  • The depth of each section.

public Paint getSeparatorPaint ()

Returns the separator paint.

Returns
  • The paint (never null).

public Stroke getSeparatorStroke ()

Returns the separator stroke.

Returns
  • The stroke (never null).

public boolean getSeparatorsVisible ()

Returns a flag that indicates whether or not separators are drawn between the sections in the chart.

Returns
  • A boolean.

public PiePlotState initialise (Graphics2D g2, Rectangle2D plotArea, PiePlot plot, Integer index, PlotRenderingInfo info)

Initialises the plot state (which will store the total of all dataset values, among other things). This method is called once at the beginning of each drawing.

Parameters
g2 the graphics device.
plotArea the plot area (null not permitted).
plot the plot.
index the secondary index (null for primary renderer).
info collects chart rendering information for return to caller.
Returns
  • A state object (maintains state information relevant to one chart drawing).

public void setInnerSeparatorExtension (double percent)

Sets the length of the inner extension of the separator line that is drawn between sections, as a percentage of the depth of the sections, and sends a PlotChangeEvent to all registered listeners.

Parameters
percent the percentage.

public void setOuterSeparatorExtension (double percent)

Sets the length of the outer extension of the separator line that is drawn between sections, as a percentage of the depth of the sections, and sends a PlotChangeEvent to all registered listeners.

Parameters
percent the percentage.

public void setSectionDepth (double sectionDepth)

The section depth is given as percentage of the plot radius. Specifying 1.0 results in a straightforward pie chart.

Parameters
sectionDepth the section depth.

public void setSeparatorPaint (Paint paint)

Sets the paint used to draw the separator between sections and sends a PlotChangeEvent to all registered listeners.

Parameters
paint the paint (null not permitted).

public void setSeparatorStroke (Stroke stroke)

Sets the stroke used to draw the separator between sections and sends a PlotChangeEvent to all registered listeners.

Parameters
stroke the stroke (null not permitted).

public void setSeparatorsVisible (boolean visible)

Sets the flag that controls whether or not separators are drawn between the sections in the chart, and sends a PlotChangeEvent to all registered listeners.

Parameters
visible the flag.

Protected Methods

protected void drawItem (Graphics2D g2, int section, Rectangle2D dataArea, PiePlotState state, int currentPass)

Draws a single data item.

Parameters
g2 the graphics device (null not permitted).
section the section index.
dataArea the data plot area.
state state information for one chart.
currentPass the current pass index.

protected double getLabelLinkDepth ()

This method overrides the default value for cases where the ring plot is very thin. This fixes bug 2121818.

Returns
  • The label link depth, as a percentage of the plot's radius.