Class TracePlotter

    • Field Detail

      • HORIZONTAL_KEY

        public static final ConfigKey<java.lang.Boolean> HORIZONTAL_KEY
        Key to configure whether trace is vertical or horizontal.
      • THICK_KEY

        public static final ConfigKey<java.lang.Integer> THICK_KEY
        Key to configure line thickness.
      • QUANTILES_KEY

        public static final ConfigKey<Subrange> QUANTILES_KEY
        Key to configure target quantile range.
      • SMOOTHWIDTH_KEY

        public static final ReportKey<java.lang.Double> SMOOTHWIDTH_KEY
        Report key for smoothing width.
      • SMOOTHSIZER_KEY

        public static final ConfigKey<BinSizer> SMOOTHSIZER_KEY
        Config key for smoothing width configuration.
    • Constructor Detail

      • TracePlotter

        public TracePlotter​(java.lang.String name,
                            javax.swing.Icon icon,
                            CoordGroup coordGrp,
                            boolean hasVertical,
                            java.lang.String basicDescription,
                            TracePlotter.QJoin dfltJoin)
        Constructor.
        Parameters:
        name - plotter name
        icon - plotter icon
        coordGrp - coordinate group
        hasVertical - true iff vertical fill is offered (otherwise only horizontal)
        basicDescription - main part of XML description, may be augmented by the base class
        dfltJoin - default join mode
    • Method Detail

      • getJoinModeKey

        public ConfigKey<TracePlotter.QJoin> getJoinModeKey()
        Returns the config key for the Join Mode used by this plotter.
        Returns:
        join mode config key
      • 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
      • createLayer

        public PlotLayer createLayer​(DataGeom geom,
                                     DataSpec dataSpec,
                                     TracePlotter.TraceStyle 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 getCoordGroup(). 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's DataGeom.hasPosition() method will return true
        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
      • createFillPlan

        @Slow
        protected abstract FillPlan createFillPlan​(Surface surface,
                                                   DataSpec dataSpec,
                                                   DataGeom geom,
                                                   TracePlotter.TraceStyle style,
                                                   DataStore dataStore)
        Creates a plan object suitable for this layer.
        Parameters:
        surface - plot surface
        dataSpec - data spec
        geom - geom
        style - style
        dataStore - data store
        Returns:
        populated plan
      • createPointsTracePlotter

        public static TracePlotter createPointsTracePlotter​(boolean hasVertical)
        Creates a TracePlotter instance for standard 2-d point cloud data.
        Parameters:
        hasVertical - true iff vertical fill is offered (otherwise only horizontal)
        Returns:
        plotter instance
      • createArraysTracePlotter

        public static TracePlotter createArraysTracePlotter​(boolean hasVertical)
        Creates a TracePlotter instance for X/Y array data.
        Parameters:
        hasVertical - true iff vertical fill is offered (otherwise only horizontal)
        Returns:
        plotter instance