# Interface PlotType<P,A>

All Known Implementing Classes:
  `CubePlotType, MatrixPlotType, PlanePlotType, SkyPlotType, SpherePlotType, TimePlotType`

public interface PlotType<P,A>
High-level description of a type of plot that can be drawn. All the information about plotting options and implementation is available from this interface, so that generic plot presentation components (like user plot windows) can be written with no hard-coded knowledge about whether they are plotting an all-sky plot, 3D scatter, histogram or whatever.

Since:
  13 Feb 2013
Author:
  Mark Taylor

## Method Summary

Modifier and Type
Method
Description
`GangerFactory<P,A>`
`getGangerFactory()`
Returns the object that controls how multi-zone plots are arranged.
`PaperTypeSelector`
`getPaperTypeSelector()`
Returns an object which can provide graphics rendering functionality based on the required plot layers for this plot type.
`Plotter<?>[]`
`getPlotters()`
Returns a list of plotters that can be used to paint data on the surface.
`DataGeom[]`
`getPointDataGeoms()`
Returns a list of one or more geometry variants which describe how user-supplied point coordinates map to the data space.
`SurfaceFactory<P,A>`
`getSurfaceFactory()`
Returns an object that can construct the plot surface including axis painting and geometry information.

## Method Details

### getPointDataGeoms

DataGeom[] getPointDataGeoms()
Returns a list of one or more geometry variants which describe how user-supplied point coordinates map to the data space. If multiple values are returned, the first one may be used as some kind of default.

Returns:
  data geom option list

### getSurfaceFactory

SurfaceFactory<P,A> getSurfaceFactory()
Returns an object that can construct the plot surface including axis painting and geometry information.

Returns:
  surface factory

### getGangerFactory

GangerFactory<P,A> getGangerFactory()
Returns the object that controls how multi-zone plots are arranged.

Returns:
  ganger factory

### getPlotters

Plotter<?>[] getPlotters()
Returns a list of plotters that can be used to paint data on the surface.

Returns:
  plotter list

### getPaperTypeSelector

PaperTypeSelector getPaperTypeSelector()
Returns an object which can provide graphics rendering functionality based on the required plot layers for this plot type.

Returns:
  paper type selector