# Interface PlotConfiguration<P,A>

public interface PlotConfiguration<P,A>
Object capable of executing a static or interactive plot. All configuration options are contained.

Since:
  13 Dec 2019
Author:
  Mark Taylor

## Method Summary

Modifier and Type
Method
Description
`DataStore`
`createDataStore(DataStore prevStore)`
Creates a data store suitable for use with this object.
`Navigator<A>`
`createNavigator()`
Returns a navigator suitable for the plot.
`Icon`
`createPlotIcon(DataStore dataStore)`
Generates an icon which will draw the plot.
`PlotScene<P,A>`
`createPlotScene(DataStore dataStore, PlotCaching caching)`
Creates a PlotScene that can paint the plot
`Dimension`
`getPlotSize()`
Returns the requested external size of the plot.

## Method Details

### createDataStore

DataStore createDataStore(DataStore prevStore) throws IOException, InterruptedException
Creates a data store suitable for use with this object.

Parameters:
  `prevStore` - previously obtained data store, may be null
Returns:
  object containing plot data
Throws:
  `IOException`
  `InterruptedException`

### getPlotSize

Dimension getPlotSize()
Returns the requested external size of the plot.

Returns:
  external bounds size

### createNavigator

Navigator<A> createNavigator()
Returns a navigator suitable for the plot.

Returns:
  navigator

### createPlotScene

PlotScene<P,A> createPlotScene(DataStore dataStore, PlotCaching caching)
Creates a PlotScene that can paint the plot

Parameters:
  `dataStore` - object containing plot data
  `caching` - plot caching policy
Returns:
  scene

### createPlotIcon

Icon createPlotIcon(DataStore dataStore)
Generates an icon which will draw the plot. This may be slow to paint.

Parameters:
  `dataStore` - object containing plot data