Science Data Interfaces provide Java interfaces for commonly encountered datasets. These interfaces include examples such as X→Y (often rendered as a line plot) and X(i),Y(j)→Z(i,j) (often rendered as a spectrogram or color plot). These are immediately divided into two categories: those with metadata and those without. The "Simple" versions are ones without metadata. The others implement the Described interface and provide additional metadata, such as labels and units.

These interfaces are divided into the "Simple" versions and the rich versions with complete metadata.

Class Name Notes Example Rendering
SimpleXYData
  • X(i) → Y(i)
  • 0 ≤ i < size()
SimpleXYData.png
XYData
  • X(i) → Y(i)
  • Units are known.
  • Fill is detected.
  • Data is labeled.
XYData.png
XYZData
  • X(i),Y(i) → Z(i)
XYZData.png
SimpleBinnedData2D
  • X(i),Y(j) → Z(i,j)
  • 0 ≤ i < xsize()
  • 0 ≤ j < ysize()
SimpleBinnedData2D.png
BinnedData2D
  • Fill is detected.
  • Data is labeled.
BinnedData2D.png
SimpleContiguousBinnedData1D
  • Bins must be adjacent.
  • The minimum bound of each bin is accessible.
  • The maximum bound of the last bin is accessible.
SimpleContiguousBinnedData1D.png
ContiguousBinnedData1D
  • X(i) → Y(i)
  • Bins must be adjacent.
  • Fill is detected.
ContiguousBinnedData1D.png

Note often clients will need lists of these simpler types. For example, where the Radio and Plasma Wave Group at U. Iowa uses BinnedData2Ds (tables) with changing geometry, a List<BinnedData2D> should be used.