Class FillPlotter
- java.lang.Object
-
- uk.ac.starlink.ttools.plot2.layer.AbstractPlotter<FillPlotter.FillStyle>
-
- uk.ac.starlink.ttools.plot2.layer.FillPlotter
-
- All Implemented Interfaces:
Plotter<FillPlotter.FillStyle>
public class FillPlotter extends AbstractPlotter<FillPlotter.FillStyle>
Plotter that fills the area under (or above, or to the left/right) the curve defined by a set of X,Y points. This is suitable for drawing something that looks like a histogram from a set of histogram endpoints. It works with large datasets; alpha-shading is used for bars that would be thin.- Since:
- 15 Jan 2015
- Author:
- Mark Taylor
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
FillPlotter.FillStyle
Style for fill plot.
-
Field Summary
Fields Modifier and Type Field Description static ConfigKey<java.lang.Boolean>
HORIZONTAL_KEY
Key to configure whether fill is vertical or horizontal.static ConfigKey<java.lang.Boolean>
POSITIVE_KEY
Key to configure positive/negative direction of fill.
-
Constructor Summary
Constructors Constructor Description FillPlotter(boolean hasHorizontal)
Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description PlotLayer
createLayer(DataGeom geom, DataSpec dataSpec, FillPlotter.FillStyle style)
Creates a PlotLayer based on the given geometry, data and style.FillPlotter.FillStyle
createStyle(ConfigMap config)
Creates a style that can be used when creating a plot layer.java.lang.String
getPlotterDescription()
Returns an XML description of this plotter.ConfigKey[]
getStyleKeys()
Returns the configuration keys used to configure style for this plotter.-
Methods inherited from class uk.ac.starlink.ttools.plot2.layer.AbstractPlotter
getCoordGroup, getPlotterIcon, getPlotterName, hasReports
-
-
-
-
Method Detail
-
getPlotterDescription
public java.lang.String getPlotterDescription()
Description copied from interface:Plotter
Returns an XML description of this plotter.Note: really this should appear at the LayerType level.
- Returns:
- one or more <p> elements
-
getStyleKeys
public ConfigKey[] getStyleKeys()
Description copied from interface:Plotter
Returns the configuration keys used to configure style for this plotter. The keys in the return value are used in the map supplied to thePlotter.createStyle(uk.ac.starlink.ttools.plot2.config.ConfigMap)
method.- Returns:
- keys used when creating a style for this plotter.
-
createStyle
public FillPlotter.FillStyle createStyle(ConfigMap config)
Description copied from interface:Plotter
Creates a style that can be used when creating a plot layer. The keys that are significant in the supplied config map are those returned byPlotter.getStyleKeys()
. The return value can be used as input toPlotter.createLayer(uk.ac.starlink.ttools.plot2.DataGeom, uk.ac.starlink.ttools.plot2.data.DataSpec, S)
.- Parameters:
config
- map of style configuration items- Returns:
- plotter-specific plot style
-
createLayer
public PlotLayer createLayer(DataGeom geom, DataSpec dataSpec, FillPlotter.FillStyle style)
Description copied from interface:Plotter
Creates a PlotLayer based on the given geometry, data and style.The
style
parameter is the result of a call toPlotter.createStyle(uk.ac.starlink.ttools.plot2.config.ConfigMap)
.The
dataSpec
parameter must contain the coordinates defined by this plotter's CoordGroup.The
pointDataGeom
parameter is only used ifgetCoordGroup()
.getPositionCount
returns a non-zero value, otherwise the plot does not have point positions.It is legal to supply null for any of the parameters; if insufficient data is supplied to generate a plot, then the method should return null.
Creating a layer should be cheap; layers may be created and not used.
- Parameters:
geom
- indicates base position coordinates and their mapping to points in the data space; if non-null, the data geom'sDataGeom.hasPosition()
method will return truedataSpec
- specifies the data required for the plotstyle
- data style as obtained fromcreateStyle
- Returns:
- new plot layer, or null if no drawing will take place
-
-