## org.jfree.chart.plot
Class RingPlot

    java.lang.Object
      org.jfree.chart.plot.Plot
          org.jfree.chart.plot.PiePlot
              org.jfree.chart.plot.RingPlot

All Implemented Interfaces:
  java.io.Serializable, java.lang.Cloneable, java.util.EventListener, AxisChangeListener, LegendItemSource, DatasetChangeListener, org.jfree.util.PublicCloneable

    public class RingPlot

extends PiePlot
implements java.lang.Cloneable, java.io.Serializable

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

See Also:
  Serialized Form

Field Summary

Fields inherited from class org.jfree.chart.plot.PiePlot
`DEFAULT_INTERIOR_GAP, DEFAULT_LABEL_BACKGROUND_PAINT, DEFAULT_LABEL_FONT, DEFAULT_LABEL_OUTLINE_PAINT, DEFAULT_LABEL_OUTLINE_STROKE, DEFAULT_LABEL_PAINT, DEFAULT_LABEL_SHADOW_PAINT, DEFAULT_MINIMUM_ARC_ANGLE_TO_DRAW, DEFAULT_START_ANGLE, localizationResources, MAX_INTERIOR_GAP`

Fields inherited from class org.jfree.chart.plot.Plot
`DEFAULT_BACKGROUND_ALPHA, DEFAULT_BACKGROUND_PAINT, DEFAULT_FOREGROUND_ALPHA, DEFAULT_INSETS, DEFAULT_LEGEND_ITEM_BOX, DEFAULT_LEGEND_ITEM_CIRCLE, DEFAULT_OUTLINE_PAINT, DEFAULT_OUTLINE_STROKE, MINIMUM_HEIGHT_TO_DRAW, MINIMUM_WIDTH_TO_DRAW, ZERO`

Constructor Summary
`RingPlot()` Creates a new plot with a `null` dataset.
`RingPlot(PieDataset dataset)` Creates a new plot for the specified dataset.

Method Summary
`protected void` `drawItem(java.awt.Graphics2D g2, int section, java.awt.geom.Rectangle2D dataArea, PiePlotState state, int currentPass)` Draws a single data item.
`boolean` `equals(java.lang.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.
`java.awt.Paint` `getSeparatorPaint()` Returns the separator paint.
`java.awt.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.
`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` `setSeparatorPaint(java.awt.Paint paint)` Sets the paint used to draw the separator between sections.
`void` `setSeparatorStroke(java.awt.Stroke stroke)` Sets the stroke used to draw the separator between sections.
`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.

Methods inherited from class org.jfree.chart.plot.PiePlot

`clone, draw, drawLabels, drawLeftLabel, drawLeftLabels, drawPie, drawRightLabel, drawRightLabels, getArcBounds, getBaseSectionOutlinePaint, getBaseSectionOutlineStroke, getBaseSectionPaint, getDataset, getDirection, getExplodePercent, getIgnoreNullValues, getIgnoreZeroValues, getInteriorGap, getLabelBackgroundPaint, getLabelFont, getLabelGap, getLabelGenerator, getLabelLinkMargin, getLabelLinkPaint, getLabelLinkStroke, getLabelLinksVisible, getLabelOutlinePaint, getLabelOutlineStroke, getLabelPaint, getLabelShadowPaint, getLegendItems, getLegendItemShape, getLegendLabelGenerator, getLegendLabelToolTipGenerator, getMaximumExplodePercent, getMaximumLabelWidth, getMinimumArcAngleToDraw, getPieIndex, getPlotType, getSectionOutlinePaint, getSectionOutlinePaint, getSectionOutlineStroke, getSectionOutlineStroke, getSectionOutlinesVisible, getSectionPaint, getSectionPaint, getShadowPaint, getShadowXOffset, getShadowYOffset, getStartAngle, getToolTipGenerator, getURLGenerator, initialise, isCircular, setBaseSectionOutlinePaint, setBaseSectionOutlineStroke, setBaseSectionPaint, setCircular, setCircular, setDataset, setDirection, setExplodePercent, setIgnoreNullValues, setIgnoreZeroValues, setInteriorGap, setLabelBackgroundPaint, setLabelFont, setLabelGap, setLabelGenerator, setLabelLinkMargin, setLabelLinkPaint, setLabelLinkStroke, setLabelLinksVisible, setLabelOutlinePaint, setLabelOutlineStroke, setLabelPaint, setLabelShadowPaint, setLegendItemShape, setLegendLabelGenerator, setLegendLabelToolTipGenerator, setMaximumLabelWidth, setMinimumArcAngleToDraw, setPieIndex, setSectionOutlinePaint, setSectionOutlinePaint, setSectionOutlineStroke, setSectionOutlineStroke, setSectionOutlinesVisible, setSectionPaint, setSectionPaint, setShadowPaint, setShadowXOffset, setShadowYOffset, setStartAngle, setToolTipGenerator, setURLGenerator, zoom`

Methods inherited from class org.jfree.chart.plot.Plot

`addChangeListener, axisChanged, datasetChanged, drawBackground, drawBackgroundImage, drawNoDataMessage, drawOutline, fillBackground, getBackgroundAlpha, getBackgroundImage, getBackgroundImageAlignment, getBackgroundPaint, getDatasetGroup, getDrawingSupplier, getForegroundAlpha, getInsets, getNoDataMessage, getNoDataMessageFont, getNoDataMessagePaint, getOutlinePaint, getOutlineStroke, getParent, getRectX, getRectY, getRootPlot, handleClick, isSubplot, notifyListeners, removeChangeListener, resolveDomainAxisLocation, resolveRangeAxisLocation, setBackgroundAlpha, setBackgroundImage, setBackgroundImageAlignment, setBackgroundPaint, setDatasetGroup, setDrawingSupplier, setForegroundAlpha, setInsets, setInsets, setNoDataMessage, setNoDataMessageFont, setNoDataMessagePaint, setOutlinePaint, setOutlineStroke, setParent`

Methods inherited from class java.lang.Object
`finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### RingPlot

    public RingPlot()

  Creates a new plot with a `null` dataset.

### RingPlot

    public RingPlot(PieDataset dataset)

  Creates a new plot for the specified dataset.

  Parameters:
    `dataset` - the dataset (`null` permitted).

Method Detail

### getSeparatorsVisible

    public boolean getSeparatorsVisible()

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

  Returns:
    A boolean.

### setSeparatorsVisible

    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.

### getSeparatorStroke

    public java.awt.Stroke getSeparatorStroke()

  Returns the separator stroke.

  Returns:
    The stroke (never `null`).

### setSeparatorStroke

    public void setSeparatorStroke(java.awt.Stroke stroke)

  Sets the stroke used to draw the separator between sections.

  Parameters:
    `stroke` - the stroke (`null` not permitted).

### getSeparatorPaint

    public java.awt.Paint getSeparatorPaint()

  Returns the separator paint.

  Returns:
    The paint (never `null`).

### setSeparatorPaint

    public void setSeparatorPaint(java.awt.Paint paint)

  Sets the paint used to draw the separator between sections.

  Parameters:
    `paint` - the paint (`null` not permitted).

### getInnerSeparatorExtension

    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).

### setInnerSeparatorExtension

    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.

### getOuterSeparatorExtension

    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).

### setOuterSeparatorExtension

    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.

### drawItem

    protected void drawItem(java.awt.Graphics2D g2,
                            int section,
                            java.awt.geom.Rectangle2D dataArea,
                            PiePlotState state,
                            int currentPass)

  Draws a single data item.

  Overrides:
    `drawItem` in class `PiePlot`
  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.

### equals

    public boolean equals(java.lang.Object obj)

  Tests this plot for equality with an arbitrary object.

  Overrides:
    `equals` in class `PiePlot`
  Parameters:
    `obj` - the object to test against (`null` permitted).
  Returns:
    A boolean.