com.orsoncharts.renderer.xyz

## Class ScatterXYZRenderer

- java.lang.Object
- - com.orsoncharts.renderer.AbstractRenderer3D
  - - com.orsoncharts.renderer.xyz.AbstractXYZRenderer
    - - com.orsoncharts.renderer.xyz.ScatterXYZRenderer

- All Implemented Interfaces:
    ChartElement, Renderer3D, XYZRenderer, java.io.Serializable

      public class ScatterXYZRenderer
      extends AbstractXYZRenderer
      implements XYZRenderer, java.io.Serializable

  A renderer for 3D scatter plots. This renderer is used with an `XYZPlot` and any `XYZDataset` instance. Here is a sample:
  (refer to `ScatterPlot3DDemo2.java` for the code to generate the above chart).
  TIP: to create a chart using this renderer, you can use the `Chart3DFactory.createScatterChart(String, String, XYZDataset, String, String, String)` method.
  NOTE: This class is serializable, but the serialization format is subject to change in future releases and should not be relied upon for persisting instances of this class.
  See Also:
    Serialized Form

- - ### Field Summary

    - ### Fields inherited from interface com.orsoncharts.renderer.Renderer3D

      `TRANSPARENT_COLOR`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `ScatterXYZRenderer()` Creates a new instance with default attribute values.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `composeItem(XYZDataset dataset, int series, int item, World world, Dimension3D dimensions, double xOffset, double yOffset, double zOffset)` Constructs and places one item from the specified dataset into the given world.
    `boolean` | `equals(java.lang.Object obj)` Tests this renderer for equality with an arbitrary object.
    `Offset3D` | `getItemLabelOffsetPercent()` Returns the item label offsets.
    `double` | `getSize()` Returns the size of the cubes (in world units) used to display each data item.
    `void` | `setItemLabelOffsetPercent(Offset3D offset)` Sets the item label offsets and sends a change event to all registered listeners.
    `void` | `setSize(double size)` Sets the size (in world units) of the cubes used to represent each data item and sends a `Renderer3DChangeEvent` to all registered listeners.

    - ### Methods inherited from class com.orsoncharts.renderer.xyz.AbstractXYZRenderer

      `composeAll, findXRange, findYRange, findZRange, getColorSource, getComposeType, getItemLabelGenerator, getPlot, setColors, setColorSource, setItemLabelGenerator, setPlot`

    - ### Methods inherited from class com.orsoncharts.renderer.AbstractRenderer3D

      `addChangeListener, fireChangeEvent, getItemLabelBackgroundColor, getItemLabelColor, getItemLabelFont, getItemLabelPositioning, isNotify, notifyListeners, receive, removeChangeListener, setItemLabelBackgroundColor, setItemLabelColor, setItemLabelFont, setItemLabelPositioning, setNotify`

    - ### Methods inherited from class java.lang.Object

      `clone, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

    - ### Methods inherited from interface com.orsoncharts.renderer.xyz.XYZRenderer

      `composeAll, findXRange, findYRange, findZRange, getColorSource, getComposeType, getPlot, setColors, setColorSource, setPlot`

    - ### Methods inherited from interface com.orsoncharts.renderer.Renderer3D

      `addChangeListener, removeChangeListener`

    - ### Methods inherited from interface com.orsoncharts.ChartElement

      `receive`

- - ### Constructor Detail

    - #### ScatterXYZRenderer

          public ScatterXYZRenderer()

      Creates a new instance with default attribute values.

  - ### Method Detail

    - #### getSize

          public double getSize()

      Returns the size of the cubes (in world units) used to display each data item. The default value is `0.10`.
      Returns:
        The size (in world units).

    - #### setSize

          public void setSize(double size)

      Sets the size (in world units) of the cubes used to represent each data item and sends a `Renderer3DChangeEvent` to all registered listeners.
      Parameters:
        `size` - the size (in world units, must be positive).

    - #### getItemLabelOffsetPercent

          public Offset3D getItemLabelOffsetPercent()

      Returns the item label offsets.
      Returns:
        The item label offsets (never `null`).
      Since:
        1.3

    - #### setItemLabelOffsetPercent

          public void setItemLabelOffsetPercent(Offset3D offset)

      Sets the item label offsets and sends a change event to all registered listeners.
      Parameters:
        `offset` - the new offset (`null` not permitted).
      Since:
        1.3

    - #### composeItem

          public void composeItem(XYZDataset dataset,
                                  int series,
                                  int item,
                                  World world,
                                  Dimension3D dimensions,
                                  double xOffset,
                                  double yOffset,
                                  double zOffset)

      Constructs and places one item from the specified dataset into the given world. The `XYZPlot` class will iterate over its dataset and and call this method for each item (in other words, you don't need to call this method directly).
      Specified by:
        `composeItem` in interface `XYZRenderer`
      Parameters:
        `dataset` - the dataset (`null` not permitted).
        `series` - the series index.
        `item` - the item index.
        `world` - the world (`null` not permitted).
        `dimensions` - the dimensions (`null` not permitted).
        `xOffset` - the x-offset.
        `yOffset` - the y-offset.
        `zOffset` - the z-offset.

    - #### equals

          public boolean equals(java.lang.Object obj)

      Tests this renderer for equality with an arbitrary object.
      Overrides:
        `equals` in class `AbstractXYZRenderer`
      Parameters:
        `obj` - the object to test (`null` permitted).
      Returns:
        A boolean.