|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectuk.ac.starlink.ttools.plot2.layer.Pixel1dPlotter<AbstractKernelDensityPlotter.KDenseStyle>
uk.ac.starlink.ttools.plot2.layer.AbstractKernelDensityPlotter
public abstract class AbstractKernelDensityPlotter
Abstract superclass for a plotter that plots something that looks like a kernel density estimate. In fact, for reasons of efficiency and implementation, it's a histogram with pixel-sized bins, but it looks pretty much the same.
Concrete subclasses have to arrange for the details of exactly how kernels are instantiated from a given kernel shape.
Nested Class Summary | |
---|---|
static class |
AbstractKernelDensityPlotter.KDenseStyle
Style subclass for kernel density plots. |
static interface |
AbstractKernelDensityPlotter.KernelFigure
Encapsulates the details of smoothing kernel construction. |
Nested classes/interfaces inherited from class uk.ac.starlink.ttools.plot2.layer.Pixel1dPlotter |
---|
Pixel1dPlotter.BinArray, Pixel1dPlotter.Pixel1dPlan |
Field Summary | |
---|---|
static ReportKey<double[]> |
BINS_KEY
Report key for plotted bin height in data coordinates. |
static ConfigKey<Integer> |
THICK_KEY
Config key for line thickness (only effective if fill==false). |
Fields inherited from class uk.ac.starlink.ttools.plot2.layer.Pixel1dPlotter |
---|
KERNEL_KEY, SMOOTHSIZER_KEY, SMOOTHWIDTH_KEY |
Constructor Summary | |
---|---|
protected |
AbstractKernelDensityPlotter(FloatingCoord xCoord,
boolean hasWeight,
String name,
Icon icon)
Constructor. |
Method Summary | |
---|---|
protected abstract AbstractKernelDensityPlotter.KernelFigure |
createKernelFigure(ConfigMap config)
Constructs an object for plot-time kernel construction based on a particular config map. |
AbstractKernelDensityPlotter.KDenseStyle |
createStyle(ConfigMap config)
Creates a style that can be used when creating a plot layer. |
protected void |
extendPixel1dCoordinateRanges(Range[] ranges,
boolean[] logFlags,
AbstractKernelDensityPlotter.KDenseStyle style,
DataSpec dataSpec,
DataStore dataStore)
Performs any required range extension. |
protected abstract ConfigKey[] |
getKernelConfigKeys()
Returns a list of keys that specify how the smoothing kernel will be configured. |
protected LayerOpt |
getLayerOpt(AbstractKernelDensityPlotter.KDenseStyle style)
Returns the LayerOpt suitable for a given style for this plotter. |
protected ReportMap |
getPixel1dReport(Pixel1dPlotter.Pixel1dPlan plan,
AbstractKernelDensityPlotter.KDenseStyle style,
boolean xLog)
Returns information associated with the plot. |
protected int |
getPixelPadding(AbstractKernelDensityPlotter.KDenseStyle style,
PlaneSurface surf)
Returns the padding required at both ends of the array of pixel bins for calculations. |
ConfigKey[] |
getStyleKeys()
Returns the configuration keys used to configure style for this plotter. |
protected void |
paintBins(PlaneSurface surface,
Pixel1dPlotter.BinArray binArray,
AbstractKernelDensityPlotter.KDenseStyle style,
Graphics2D g)
Draws the graphical representation of a given array of counts per horizontal pixel. |
Methods inherited from class uk.ac.starlink.ttools.plot2.layer.Pixel1dPlotter |
---|
calculatePixelPlan, createKernel, createLayer, getCoordGroup, getDataBins, getEffectiveExtent, getPixelWidth, getPlotterIcon, getPlotterName, getWeightCoordIndex, hasReports, readBins |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Methods inherited from interface uk.ac.starlink.ttools.plot2.Plotter |
---|
getPlotterDescription |
Field Detail |
---|
public static final ReportKey<double[]> BINS_KEY
public static final ConfigKey<Integer> THICK_KEY
Constructor Detail |
---|
protected AbstractKernelDensityPlotter(FloatingCoord xCoord, boolean hasWeight, String name, Icon icon)
xCoord
- X axis coordinatehasWeight
- true to permit histogram weightingname
- plotter nameicon
- plotter iconMethod Detail |
---|
protected abstract ConfigKey[] getKernelConfigKeys()
protected abstract AbstractKernelDensityPlotter.KernelFigure createKernelFigure(ConfigMap config) throws ConfigException
config
- config map with kernel config keys in it
ConfigException
getKernelConfigKeys()
public ConfigKey[] getStyleKeys()
Plotter
Plotter.createStyle(uk.ac.starlink.ttools.plot2.config.ConfigMap)
method.
public AbstractKernelDensityPlotter.KDenseStyle createStyle(ConfigMap config) throws ConfigException
Plotter
Plotter.getStyleKeys()
.
The return value can be used as input to Plotter.createLayer(uk.ac.starlink.ttools.plot2.DataGeom, uk.ac.starlink.ttools.plot2.data.DataSpec, S)
.
config
- map of style configuration items
ConfigException
protected LayerOpt getLayerOpt(AbstractKernelDensityPlotter.KDenseStyle style)
Pixel1dPlotter
getLayerOpt
in class Pixel1dPlotter<AbstractKernelDensityPlotter.KDenseStyle>
style
- plot style
protected int getPixelPadding(AbstractKernelDensityPlotter.KDenseStyle style, PlaneSurface surf)
Pixel1dPlotter
getPixelPadding
in class Pixel1dPlotter<AbstractKernelDensityPlotter.KDenseStyle>
style
- plotting stylesurf
- plotting surface
protected void paintBins(PlaneSurface surface, Pixel1dPlotter.BinArray binArray, AbstractKernelDensityPlotter.KDenseStyle style, Graphics2D g)
Pixel1dPlotter
paintBins
in class Pixel1dPlotter<AbstractKernelDensityPlotter.KDenseStyle>
surface
- plotting surfacebinArray
- counts per X axis pixelstyle
- plotting styleg
- graphics contextprotected void extendPixel1dCoordinateRanges(Range[] ranges, boolean[] logFlags, AbstractKernelDensityPlotter.KDenseStyle style, DataSpec dataSpec, DataStore dataStore)
Pixel1dPlotter
extendPixel1dCoordinateRanges
in class Pixel1dPlotter<AbstractKernelDensityPlotter.KDenseStyle>
ranges
- array of data space dimension ranges to updatelogFlags
- array of linear/log flags corresponding to rangesstyle
- plotting styledataSpec
- data specificationdataStore
- data storage objectPlotLayer.extendCoordinateRanges(uk.ac.starlink.ttools.plot.Range[], boolean[], uk.ac.starlink.ttools.plot2.data.DataStore)
protected ReportMap getPixel1dReport(Pixel1dPlotter.Pixel1dPlan plan, AbstractKernelDensityPlotter.KDenseStyle style, boolean xLog)
Pixel1dPlotter
getPixel1dReport
in class Pixel1dPlotter<AbstractKernelDensityPlotter.KDenseStyle>
plan
- plotting planstyle
- plot stylexLog
- true iff X axis is logarithmic
Drawing.getReport(java.lang.Object)
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |