org.jfree.data.xy

## Class DefaultWindDataset

- java.lang.Object
- - org.jfree.data.general.AbstractDataset
  - - org.jfree.data.general.AbstractSeriesDataset
    - - org.jfree.data.xy.AbstractXYDataset
      - - org.jfree.data.xy.DefaultWindDataset

All Implemented Interfaces:
  java.io.ObjectInputValidation, java.io.Serializable, java.lang.Cloneable, java.util.EventListener, Dataset, SeriesChangeListener, SeriesDataset, WindDataset, XYDataset, org.jfree.util.PublicCloneable

    public class DefaultWindDataset
    extends AbstractXYDataset
    implements WindDataset, org.jfree.util.PublicCloneable

A default implementation of the `WindDataset` interface.

See Also:
  Serialized Form

### Constructor Summary

Constructors
Constructor and Description
`DefaultWindDataset()` Constructs a new, empty, dataset.
`DefaultWindDataset(java.util.List seriesKeys, java.lang.Object[][][] data)` Constructs a dataset based on the specified data array.
`DefaultWindDataset(java.lang.Object[][][] data)` Constructs a dataset based on the specified data array.
`DefaultWindDataset(java.lang.String[] seriesNames, java.lang.Object[][][] data)` Constructs a dataset based on the specified data array.

### Method Summary

Methods
`boolean` `equals(java.lang.Object obj)` Checks this `WindDataset` for equality with an arbitrary object.
`int` `getItemCount(int series)` Returns the number of items in a series.
`int` `getSeriesCount()` Returns the number of series in the dataset.
`java.lang.Comparable` `getSeriesKey(int series)` Returns the key for a series.
`java.lang.Number` `getWindDirection(int series, int item)` Returns the wind direction for one item within a series.
`java.lang.Number` `getWindForce(int series, int item)` Returns the wind force for one item within a series.
`java.lang.Number` `getX(int series, int item)` Returns the x-value for one item within a series.
`java.lang.Number` `getY(int series, int item)` Returns the y-value for one item within a series.
`static java.util.List` `seriesNameListFromDataArray(java.lang.Object[][] data)` Utility method for automatically generating series names.

### Methods inherited from class org.jfree.data.xy.AbstractXYDataset

`getDomainOrder, getXValue, getYValue`

### Methods inherited from class org.jfree.data.general.AbstractSeriesDataset

`indexOf, seriesChanged`

### Methods inherited from class org.jfree.data.general.AbstractDataset

`addChangeListener, clone, fireDatasetChanged, getGroup, hasListener, notifyListeners, removeChangeListener, setGroup, validateObject`

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

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

### Methods inherited from interface org.jfree.data.xy.XYDataset

`getDomainOrder, getXValue, getYValue`

### Methods inherited from interface org.jfree.data.general.SeriesDataset

`indexOf`

### Methods inherited from interface org.jfree.data.general.Dataset

`addChangeListener, getGroup, removeChangeListener, setGroup`

### Methods inherited from interface org.jfree.util.PublicCloneable

`clone`

### Constructor Detail

#### DefaultWindDataset

    public DefaultWindDataset()

Constructs a new, empty, dataset. Since there are currently no methods to add data to an existing dataset, you should probably use a different constructor.

#### DefaultWindDataset

    public DefaultWindDataset(java.lang.Object[][][] data)

Constructs a dataset based on the specified data array.

Parameters:
  `data` - the data (`null` not permitted).
Throws:
  `java.lang.NullPointerException` - if `data` is `null`.

#### DefaultWindDataset

    public DefaultWindDataset(java.lang.String[] seriesNames,
                      java.lang.Object[][][] data)

Constructs a dataset based on the specified data array.

Parameters:
  `seriesNames` - the names of the series (`null` not permitted).
  `data` - the wind data.
Throws:
  `java.lang.NullPointerException` - if `seriesNames` is `null`.

#### DefaultWindDataset

    public DefaultWindDataset(java.util.List seriesKeys,
                      java.lang.Object[][][] data)

Constructs a dataset based on the specified data array. The array can contain multiple series, each series can contain multiple items, and each item is as follows:

- `data[series][item][0]` - the date (either a `Date` or a `Number` that is the milliseconds since 1-Jan-1970);
- `data[series][item][1]` - the wind direction (1 - 12, like the numbers on a clock face);
- `data[series][item][2]` - the wind force (1 - 12 on the Beaufort scale)

Parameters:
  `seriesKeys` - the names of the series (`null` not permitted).
  `data` - the wind dataset (`null` not permitted).
Throws:
  `java.lang.IllegalArgumentException` - if `seriesKeys` is `null`.
  `java.lang.IllegalArgumentException` - if the number of series keys does not match the number of series in the array.
  `java.lang.NullPointerException` - if `data` is `null`.

### Method Detail

#### getSeriesCount

    public int getSeriesCount()

Returns the number of series in the dataset.

Specified by:
  `getSeriesCount` in interface `SeriesDataset`
Specified by:
  `getSeriesCount` in class `AbstractSeriesDataset`
Returns:
  The series count.

#### getItemCount

    public int getItemCount(int series)

Returns the number of items in a series.

Specified by:
  `getItemCount` in interface `XYDataset`
Parameters:
  `series` - the series (zero-based index).
Returns:
  The item count.

#### getSeriesKey

    public java.lang.Comparable getSeriesKey(int series)

Returns the key for a series.

Specified by:
  `getSeriesKey` in interface `SeriesDataset`
Specified by:
  `getSeriesKey` in class `AbstractSeriesDataset`
Parameters:
  `series` - the series (zero-based index).
Returns:
  The series key.

#### getX

    public java.lang.Number getX(int series,
                        int item)

Returns the x-value for one item within a series. This should represent a point in time, encoded as milliseconds in the same way as java.util.Date.

Specified by:
  `getX` in interface `XYDataset`
Parameters:
  `series` - the series (zero-based index).
  `item` - the item (zero-based index).
Returns:
  The x-value for the item within the series.

#### getY

    public java.lang.Number getY(int series,
                        int item)

Returns the y-value for one item within a series. This maps to the `getWindForce(int, int)` method and is implemented because `WindDataset` is an extension of `XYDataset`.

Specified by:
  `getY` in interface `XYDataset`
Parameters:
  `series` - the series (zero-based index).
  `item` - the item (zero-based index).
Returns:
  The y-value for the item within the series.

#### getWindDirection

    public java.lang.Number getWindDirection(int series,
                                    int item)

Returns the wind direction for one item within a series. This is a number between 0 and 12, like the numbers on an upside-down clock face.

Specified by:
  `getWindDirection` in interface `WindDataset`
Parameters:
  `series` - the series (zero-based index).
  `item` - the item (zero-based index).
Returns:
  The wind direction for the item within the series.

#### getWindForce

    public java.lang.Number getWindForce(int series,
                                int item)

Returns the wind force for one item within a series. This is a number between 0 and 12, as defined by the Beaufort scale.

Specified by:
  `getWindForce` in interface `WindDataset`
Parameters:
  `series` - the series (zero-based index).
  `item` - the item (zero-based index).
Returns:
  The wind force for the item within the series.

#### seriesNameListFromDataArray

    public static java.util.List seriesNameListFromDataArray(java.lang.Object[][] data)

Utility method for automatically generating series names.

Parameters:
  `data` - the wind data (`null` not permitted).
Returns:
  An array of Series N with N = { 1 .. data.length }.
Throws:
  `java.lang.NullPointerException` - if `data` is `null`.

#### equals

    public boolean equals(java.lang.Object obj)

Checks this `WindDataset` for equality with an arbitrary object. This method returns `true` if and only if:

- `obj` is not `null`;
- `obj` is an instance of `DefaultWindDataset`;
- both datasets have the same number of series containing identical values.

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