## org.jfree.chart.plot.dial
Class DialPlot

    java.lang.Object
      org.jfree.chart.plot.Plot
          org.jfree.chart.plot.dial.DialPlot

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

    public class DialPlot

extends Plot
implements DialLayerChangeListener

A dial plot composed of user-definable layers.

Since:
  1.0.7
See Also:
  Serialized Form

Field Summary

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
`DialPlot()` Creates a new instance of `DialPlot`.
`DialPlot(ValueDataset dataset)` Creates a new instance of `DialPlot`.

Method Summary
`void` `addLayer(DialLayer layer)` Adds a layer to the plot and sends a `PlotChangeEvent` to all registered listeners.
`void` `addPointer(DialPointer pointer)` Adds a pointer to the plot and sends a `PlotChangeEvent` to all registered listeners.
`void` `addScale(int index, DialScale scale)` Adds a dial scale to the plot and sends a `PlotChangeEvent` to all registered listeners.
`void` `dialLayerChanged(DialLayerChangeEvent event)` Receives notification when a layer has changed, and responds by forwarding a `PlotChangeEvent` to all registered listeners.
`void` `draw(java.awt.Graphics2D g2, java.awt.geom.Rectangle2D area, java.awt.geom.Point2D anchor, PlotState parentState, PlotRenderingInfo info)` Draws the plot.
`boolean` `equals(java.lang.Object obj)` Tests this `DialPlot` instance for equality with an arbitrary object.
`DialLayer` `getBackground()` Returns the background.
`DialLayer` `getCap()` Returns the cap.
`ValueDataset` `getDataset()` Returns the primary dataset for the plot.
`ValueDataset` `getDataset(int index)` Returns the dataset at the given index.
`int` `getDatasetCount()` Returns the number of datasets.
`DialFrame` `getDialFrame()` Returns the dial's frame.
`int` `getLayerIndex(DialLayer layer)` Returns the index for the specified layer.
`java.lang.String` `getPlotType()` Returns the plot type.
`DialPointer` `getPointerForDataset(int datasetIndex)` Returns the dial pointer that is associated with the specified dataset, or `null`.
`int` `getPointerIndex(DialPointer pointer)` Returns the index for the specified pointer.
`DialScale` `getScale(int index)` Returns the scale at the given index.
`DialScale` `getScaleForDataset(int datasetIndex)` Returns the dial scale for a specific dataset.
`double` `getValue(int datasetIndex)` Returns the value from the specified dataset.
`double` `getViewHeight()` Returns the height of the viewing rectangle.
`double` `getViewWidth()` Returns the width of the viewing rectangle.
`double` `getViewX()` Returns the x-coordinate of the viewing rectangle.
`double` `getViewY()` Returns the y-coordinate of the viewing rectangle.
`int` `hashCode()` Returns a hash code for this instance.
`void` `mapDatasetToScale(int index, int scaleIndex)` Maps a dataset to a particular scale.
`static java.awt.geom.Rectangle2D` `rectangleByRadius(java.awt.geom.Rectangle2D rect, double radiusW, double radiusH)` A utility method that computes a rectangle using relative radius values.
`void` `removeLayer(DialLayer layer)` Removes the specified layer and sends a `PlotChangeEvent` to all registered listeners.
`void` `removeLayer(int index)` Removes the layer at the specified index and sends a `PlotChangeEvent` to all registered listeners.
`void` `removePointer(DialPointer pointer)` Removes the specified pointer and sends a `PlotChangeEvent` to all registered listeners.
`void` `removePointer(int index)` Removes the pointer at the specified index and sends a `PlotChangeEvent` to all registered listeners.
`void` `setBackground(DialLayer background)` Sets the background layer and sends a `PlotChangeEvent` to all registered listeners.
`void` `setCap(DialLayer cap)` Sets the cap and sends a `PlotChangeEvent` to all registered listeners.
`void` `setDataset(int index, ValueDataset dataset)` Sets a dataset for the plot.
`void` `setDataset(ValueDataset dataset)` Sets the dataset for the plot, replacing the existing dataset, if there is one, and sends a `PlotChangeEvent` to all registered listeners.
`void` `setDialFrame(DialFrame frame)` Sets the dial's frame and sends a `PlotChangeEvent` to all registered listeners.
`void` `setView(double x, double y, double w, double h)` Sets the viewing rectangle, relative to the dial's framing rectangle, and sends a `PlotChangeEvent` to all registered listeners.

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

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

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

Constructor Detail

### DialPlot

    public DialPlot()

  Creates a new instance of `DialPlot`.

### DialPlot

    public DialPlot(ValueDataset dataset)

  Creates a new instance of `DialPlot`.

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

Method Detail

### getBackground

    public DialLayer getBackground()

  Returns the background.

  Returns:
    The background (possibly `null`).
  See Also:
    `setBackground(DialLayer)`

### setBackground

    public void setBackground(DialLayer background)

  Sets the background layer and sends a `PlotChangeEvent` to all registered listeners.

  Parameters:
    `background` - the background layer (`null` permitted).
  See Also:
    `getBackground()`

### getCap

    public DialLayer getCap()

  Returns the cap.

  Returns:
    The cap (possibly `null`).
  See Also:
    `setCap(DialLayer)`

### setCap

    public void setCap(DialLayer cap)

  Sets the cap and sends a `PlotChangeEvent` to all registered listeners.

  Parameters:
    `cap` - the cap (`null` permitted).
  See Also:
    `getCap()`

### getDialFrame

    public DialFrame getDialFrame()

  Returns the dial's frame.

  Returns:
    The dial's frame (never `null`).
  See Also:
    `setDialFrame(DialFrame)`

### setDialFrame

    public void setDialFrame(DialFrame frame)

  Sets the dial's frame and sends a `PlotChangeEvent` to all registered listeners.

  Parameters:
    `frame` - the frame (`null` not permitted).
  See Also:
    `getDialFrame()`

### getViewX

    public double getViewX()

  Returns the x-coordinate of the viewing rectangle. This is specified in the range 0.0 to 1.0, relative to the dial's framing rectangle.

  Returns:
    The x-coordinate of the viewing rectangle.
  See Also:
    `setView(double, double, double, double)`

### getViewY

    public double getViewY()

  Returns the y-coordinate of the viewing rectangle. This is specified in the range 0.0 to 1.0, relative to the dial's framing rectangle.

  Returns:
    The y-coordinate of the viewing rectangle.
  See Also:
    `setView(double, double, double, double)`

### getViewWidth

    public double getViewWidth()

  Returns the width of the viewing rectangle. This is specified in the range 0.0 to 1.0, relative to the dial's framing rectangle.

  Returns:
    The width of the viewing rectangle.
  See Also:
    `setView(double, double, double, double)`

### getViewHeight

    public double getViewHeight()

  Returns the height of the viewing rectangle. This is specified in the range 0.0 to 1.0, relative to the dial's framing rectangle.

  Returns:
    The height of the viewing rectangle.
  See Also:
    `setView(double, double, double, double)`

### setView

    public void setView(double x,
                        double y,
                        double w,
                        double h)

  Sets the viewing rectangle, relative to the dial's framing rectangle, and sends a `PlotChangeEvent` to all registered listeners.

  Parameters:
    `x` - the x-coordinate (in the range 0.0 to 1.0).
    `y` - the y-coordinate (in the range 0.0 to 1.0).
    `w` - the width (in the range 0.0 to 1.0).
    `h` - the height (in the range 0.0 to 1.0).
  See Also:
    `getViewX()`, `getViewY()`, `getViewWidth()`, `getViewHeight()`

### addLayer

    public void addLayer(DialLayer layer)

  Adds a layer to the plot and sends a `PlotChangeEvent` to all registered listeners.

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

### getLayerIndex

    public int getLayerIndex(DialLayer layer)

  Returns the index for the specified layer.

  Parameters:
    `layer` - the layer (`null` not permitted).
  Returns:
    The layer index.

### removeLayer

    public void removeLayer(int index)

  Removes the layer at the specified index and sends a `PlotChangeEvent` to all registered listeners.

  Parameters:
    `index` - the index.

### removeLayer

    public void removeLayer(DialLayer layer)

  Removes the specified layer and sends a `PlotChangeEvent` to all registered listeners.

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

### addPointer

    public void addPointer(DialPointer pointer)

  Adds a pointer to the plot and sends a `PlotChangeEvent` to all registered listeners.

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

### getPointerIndex

    public int getPointerIndex(DialPointer pointer)

  Returns the index for the specified pointer.

  Parameters:
    `pointer` - the pointer (`null` not permitted).
  Returns:
    The pointer index.

### removePointer

    public void removePointer(int index)

  Removes the pointer at the specified index and sends a `PlotChangeEvent` to all registered listeners.

  Parameters:
    `index` - the index.

### removePointer

    public void removePointer(DialPointer pointer)

  Removes the specified pointer and sends a `PlotChangeEvent` to all registered listeners.

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

### getPointerForDataset

    public DialPointer getPointerForDataset(int datasetIndex)

  Returns the dial pointer that is associated with the specified dataset, or `null`.

  Parameters:
    `datasetIndex` - the dataset index.
  Returns:
    The pointer.

### getDataset

    public ValueDataset getDataset()

  Returns the primary dataset for the plot.

  Returns:
    The primary dataset (possibly `null`).

### getDataset

    public ValueDataset getDataset(int index)

  Returns the dataset at the given index.

  Parameters:
    `index` - the dataset index.
  Returns:
    The dataset (possibly `null`).

### setDataset

    public void setDataset(ValueDataset dataset)

  Sets the dataset for the plot, replacing the existing dataset, if there is one, and sends a `PlotChangeEvent` to all registered listeners.

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

### setDataset

    public void setDataset(int index,
                           ValueDataset dataset)

  Sets a dataset for the plot.

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

### getDatasetCount

    public int getDatasetCount()

  Returns the number of datasets.

  Returns:
    The number of datasets.

### 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. This method is usually called by the `JFreeChart` instance that manages the plot.

  Specified by:
    `draw` in class `Plot`
  Parameters:
    `g2` - the graphics target.
    `area` - the area in which the plot should be drawn.
    `anchor` - the anchor point (typically the last point that the mouse clicked on, `null` is permitted).
    `parentState` - the state for the parent plot (if any).
    `info` - used to collect plot rendering info (`null` permitted).

### getValue

    public double getValue(int datasetIndex)

  Returns the value from the specified dataset.

  Parameters:
    `datasetIndex` - the dataset index.
  Returns:
    The data value.

### addScale

    public void addScale(int index,
                         DialScale scale)

  Adds a dial scale to the plot and sends a `PlotChangeEvent` to all registered listeners.

  Parameters:
    `index` - the scale index.
    `scale` - the scale (`null` not permitted).

### getScale

    public DialScale getScale(int index)

  Returns the scale at the given index.

  Parameters:
    `index` - the scale index.
  Returns:
    The scale (possibly `null`).

### mapDatasetToScale

    public void mapDatasetToScale(int index,
                                  int scaleIndex)

  Maps a dataset to a particular scale.

  Parameters:
    `index` - the dataset index (zero-based).
    `scaleIndex` - the scale index (zero-based).

### getScaleForDataset

    public DialScale getScaleForDataset(int datasetIndex)

  Returns the dial scale for a specific dataset.

  Parameters:
    `datasetIndex` - the dataset index.
  Returns:
    The dial scale.

### rectangleByRadius

    public static java.awt.geom.Rectangle2D rectangleByRadius(java.awt.geom.Rectangle2D rect,
                                                              double radiusW,
                                                              double radiusH)

  A utility method that computes a rectangle using relative radius values.

  Parameters:
    `rect` - the reference rectangle (`null` not permitted).
    `radiusW` - the width radius (must be > 0.0)
    `radiusH` - the height radius.
  Returns:
    A new rectangle.

### dialLayerChanged

    public void dialLayerChanged(DialLayerChangeEvent event)

  Receives notification when a layer has changed, and responds by forwarding a `PlotChangeEvent` to all registered listeners.

  Specified by:
    `dialLayerChanged` in interface `DialLayerChangeListener`
  Parameters:
    `event` - the event.

### equals

    public boolean equals(java.lang.Object obj)

  Tests this `DialPlot` instance for equality with an arbitrary object. The plot's dataset(s) is (are) not included in the test.

  Overrides:
    `equals` in class `Plot`
  Parameters:
    `obj` - the object (`null` permitted).
  Returns:
    A boolean.

### hashCode

    public int hashCode()

  Returns a hash code for this instance.

  Overrides:
    `hashCode` in class `java.lang.Object`
  Returns:
    The hash code.

### getPlotType

    public java.lang.String getPlotType()

  Returns the plot type.

  Specified by:
    `getPlotType` in class `Plot`
  Returns:
    `"DialPlot"`