Class ContourPlotter

java.lang.Object
uk.ac.starlink.ttools.plot2.layer.AbstractPlotter<ContourStyle>
uk.ac.starlink.ttools.plot2.layer.ContourPlotter
All Implemented Interfaces:
Plotter<ContourStyle>

public class ContourPlotter extends AbstractPlotter<ContourStyle>
Plotter implementation that draws contours for a density map of points.
Since:
17 Feb 2013
Author:
Mark Taylor
  • Field Details

    • NLEVEL_KEY

      public static final ConfigKey<Integer> NLEVEL_KEY
      Config key for the number of contour levels plotted.
    • SMOOTH_KEY

      public static final ConfigKey<Integer> SMOOTH_KEY
      Config key for the width of the smoothing kernel.
    • THICKNESS_KEY

      public static final ConfigKey<Integer> THICKNESS_KEY
      Config key for the plotted line thickness.
    • OFFSET_KEY

      public static final ConfigKey<Double> OFFSET_KEY
      Config key for the contour zero level.
    • COMBINER_KEY

      public static final ConfigKey<Combiner> COMBINER_KEY
      Config key for the smoothing combination mode.
    • LEVELS_REPKEY

      public static final ReportKey<double[]> LEVELS_REPKEY
      Report key for the contour levels plotted.
  • Constructor Details

    • ContourPlotter

      public ContourPlotter(boolean hasWeight)
      Constructor.
      Parameters:
      hasWeight - true if plotter is to allow weighted contour maps
  • Method Details

    • getPlotterDescription

      public 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
    • hasReports

      public boolean hasReports()
      Description copied from interface: Plotter
      Indicates whether the drawings produced by this plotter will return general interest report information to upstream plotting code.
      Specified by:
      hasReports in interface Plotter<ContourStyle>
      Overrides:
      hasReports in class AbstractPlotter<ContourStyle>
      Returns:
      true if the plot report may return interesting information
      See Also:
    • 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 the Plotter.createStyle(uk.ac.starlink.ttools.plot2.config.ConfigMap) method.
      Returns:
      keys used when creating a style for this plotter.
    • createStyle

      public ContourStyle 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 by 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).
      Parameters:
      config - map of style configuration items
      Returns:
      plotter-specific plot style
    • createLayer

      public PlotLayer createLayer(DataGeom geom, DataSpec dataSpec, ContourStyle 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 to Plotter.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 if the CoordGroup.getBasicPositionCount() or CoordGroup.getExtraPositionCount() method from this plotter's CoordGroup return 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
      dataSpec - specifies the data required for the plot
      style - data style as obtained from createStyle
      Returns:
      new plot layer, or null if no drawing will take place